GVKun编程网logo

CSV阅读器(Python)中的“行包含NULL字节”(python csv readline)

3

在本文中,我们将为您详细介绍CSV阅读器的相关知识,并且为您解答关于Python中的“行包含NULL字节”的疑问,此外,我们还会提供一些关于/System/Library/Frameworks/Pyt

在本文中,我们将为您详细介绍CSV阅读器的相关知识,并且为您解答关于Python中的“行包含NULL字节”的疑问,此外,我们还会提供一些关于/System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python:无法打开文件“esptool.py”、CMake 不断从 cygwin python 中获取 Python,如何从 Windows 安装的 Python 中获取、Error: Can‘t find Python executable “python“, you can set the PYTHON env variable、Python - 数据分析,查找包含 python 字典的多个 python 字典之间的键值匹配的有用信息。

本文目录一览:

CSV阅读器(Python)中的“行包含NULL字节”(python csv readline)

CSV阅读器(Python)中的“行包含NULL字节”(python csv readline)

我正在尝试编写一个程序,该程序查看.CSV文件(input.csv)并仅重写以某个元素(corrected.csv)开头的行,如文本文件(output.txt)中所列。

这是我的程序现在的样子:

import csv

lines = []
with open('output.txt','r') as f:
    for line in f.readlines():
        lines.append(line[:-1])

with open('corrected.csv','w') as correct:
    writer = csv.writer(correct,dialect = 'excel')
    with open('input.csv','r') as mycsv:
        reader = csv.reader(mycsv)
        for row in reader:
            if row[0] not in lines:
                writer.writerow(row)

不幸的是,我一直收到此错误,而且我不知道它是什么。

Traceback (most recent call last):
  File "C:\Python32\Sample Program\csvParser.py",line 12,in <module>
    for row in reader:
_csv.Error: line contains NULL byte

感谢这里的所有人,甚至使我明白这一点。

csv.reader无法打开文件时,它需要一个文件对象。更好的解决方案是:

import csv

lines = []
with open('output.txt','r') as mycsv:
        reader = csv.reader(mycsv)
        for row in reader:
            if row[0] not in lines:
                writer.writerow(row)

/System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python:无法打开文件“esptool.py”

/System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python:无法打开文件“esptool.py”

如何解决/System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python:无法打开文件“esptool.py”

我正在 mac OS X 上使用 ESP8266Flash.app 更新 ESP8266 固件。 但是当我开始刷固件时出现以下错误:

/System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python: can''t open file ''esptool.py'': [Errno 1] Operation not permitted."

我该如何解决这个问题?

CMake 不断从 cygwin python 中获取 Python,如何从 Windows 安装的 Python 中获取

CMake 不断从 cygwin python 中获取 Python,如何从 Windows 安装的 Python 中获取

如何解决CMake 不断从 cygwin python 中获取 Python,如何从 Windows 安装的 Python 中获取

我有一个看起来像这样的 CMake 脚本:

  1. find_program(PYTHON_COMMAND NAMES python3 python)

问题是它检测到安装在 Cygwin 安装中的 python。 输出总是:

  1. -- PYTHON_PATH:C:/cygwin64/bin/python3

我希望它取自:

  1. c:\\python36-64\\python

在windows PATH变量中,Cygwin bin在路径的最后一个,windows安装在第一个 但它只检测到 Cygwin python,
怎么改?

Error: Can‘t find Python executable “python“, you can set the PYTHON env variable

Error: Can‘t find Python executable “python“, you can set the PYTHON env variable

在启动vue项目的时候,安装node.js组件node-sass过程中报错了,错误提示如下
Error: Can’t find Python executable “python”, you can set the PYTHON env variable

由错误提示可知:Node.js 在安装模块组件node-sass的时候,node.js缺少Visual Studio2015 Build Tools相关的组件和python的环境,如果安装了vs2015组件的小伙伴们就不用安装Visual Studio2015 Build Tools相应的组件,只用安装python2.7即可解决缺少的python组件的问题。

欲安装python2.7,请至python官网:www.python.org 下载,然后配置好python的环境变量即可。

不过博主我并不推荐上述的解决方案,因为对于程序员来说,效率第一,上述的问题一个命令就可以轻松解决你所遇到的麻烦,前面说了那么多,无非就是想告诉在看本篇博客的同仁们放下浮躁的心,遇到问题首先不是急着去解决问题,而是分析为什么会这样,然后才能水到聚成的去找到解决问题的方法。

运行下面这个命令即可解决你们遇到的Error问题

npm install --global --production windows-build-tools

:上面讲述了一堆就是为了讲述此命令是干嘛的,上面已经描述很详细了,就不再赘述了,该操作与上述的一堆操作无异,效果却是一样的。

然后运气不好的小伙伴可能接着会遇到一个坑,那就是执行了:npm install --global --production windows-build-tools这个命令的人细心点会发现执行到一半就卡住了,这个卡住了没有红字重点提示,而且下方还有英文在等待中,粗心的小伙伴可能以为是命令执行完了,组件安装好了,其实不然,我这边已经解决了,就无法复现了,具体点就是中文的提示,提示我们由于有类似组件在运行或者下载导致无法继续下载安装组件了。稳妥点的解决办法是,将电脑重启,将底层正在运行的模块干掉,待电脑重启后再执行npm install --global --production windows-build-tools这条命令即可,博主我就是这样解决的,稳稳的幸福就会浮现在你面前如下图所示,你的可能和我不一样,因为我已经跑成功过一次了,没有你的那么多细节的log打印。
在这里插入图片描述

然后就是在你的项目下shift+鼠标右击你的项目运行npm run dev即可启动vue项目了。

Python - 数据分析,查找包含 python 字典的多个 python 字典之间的键值匹配

Python - 数据分析,查找包含 python 字典的多个 python 字典之间的键值匹配

如何解决Python - 数据分析,查找包含 python 字典的多个 python 字典之间的键值匹配

我的任务是创建一个程序,将包含个人信息的 3 个数据集(可能是 .csv 文件)作为输入,解析它们,然后搜索匹配项。现实世界的目的是寻找 3 家独立律师事务所之间的利益冲突。

我的超高级计划是将相关列解析成包含每个人个人信息的字典,例如:

  1. {lname: jones,fname: matt,dob: 01-02-1990,addr1: 28 sheffield dr}

然后,我会将每个个人信息词典输入到每个律师事务所的一个更大的超集词典中,就像这个(代表 3 个较大的容器词典中的 1 个,每个词典代表一个律师事务所):

>
  1. {{lname: jones,addr1: 28 sheffield dr},{lname: kalinski,fname: fred,dob: 01-02-1980,addr1: 28 purple st},{lname: kyle,fname: ken,dob: 05-01-1978,addr1: 28 carlisle dr}}

最后,任务是找到匹配项并识别存在于代表每个律师事务所的超过 1 个“容器/超集”词典中的个体。

我正在考虑匹配“姓氏”和“出生日期”以识别“软匹配”,然后可以将匹配的个人信息字典输入其他对象以进行进一步处理/检查。我现在的主要目标是验证我应该如何处理这个问题的合理计划。

所以,本质上,我需要在一个字典字典和另一个字典字典之间找到匹配的键/值对。

所以我想知道...

  1. 对我的高级计划有什么建议吗?我的逻辑流程有什么明显的问题吗?我不是数据科学家,甚至不是专业开发人员,因此如果有人对此类项目更有经验,可以补充一些内容,我将不胜感激。

  2. 我知道 Pandas 是一个流行的用于大规模数据分析的库。熊猫会帮助我实现我在这里想做的事情吗?有没有其他库或模块想到这样的事情?

解决方法

一些需要调查的技术:

  1. groupby
  2. 重复

导入库

  1. import numpy as np
  2. import pandas as pd
  3. import json

准备测试数据

  1. text_data = ''[{"lname": "jones","fname": "matt","dob": "01-02-1990","addr1": "28 sheffield dr"},{"lname": "kalinski","fname": "fred","dob": "01-02-1980","addr1": "28 purple st"},{"lname": "kyle","fname": "ken","dob": "05-01-1978","addr1": "28 carlisle dr"},{"lname": "jones","addr1": "new address"},"dob": "05-01-1979","addr1": "other address"}]''
  2. json_data = json.loads(text_data)
  3. df = pd.DataFrame(json_data)

到目前为止的数据框是:

  1. >>> df
  2. lname fname dob addr1
  3. 0 jones matt 01-02-1990 28 sheffield dr
  4. 1 kalinski fred 01-02-1980 28 purple st
  5. 2 kyle ken 05-01-1978 28 carlisle dr
  6. 3 jones matt 01-02-1990 new address
  7. 4 kyle ken 05-01-1979 other address

分组依据

  1. >>> df.groupby(["lname","dob"]).count()
  2. fname addr1
  3. lname dob
  4. jones 01-02-1990 2 2 <- DUPLICATE
  5. kalinski 01-02-1980 1 1
  6. kyle 05-01-1978 1 1 <- SAME NAME
  7. 05-01-1979 1 1 <- BUT,DIFFERENT DOB

不像groupby那么简单,来看看复制方法

复制方法

  1. >>> idx = np.where(df[''lname''].duplicated(keep=False) & df[''dob''].duplicated(keep=False))

还有 idx 内容

  1. >>> (array([0,3]),)

返回数据框

  1. >>> df.iloc[idx]
  2. lname fname dob addr1
  3. 0 jones matt 01-02-1990 28 sheffield dr
  4. 3 jones matt 01-02-1990 new address

关于CSV阅读器Python中的“行包含NULL字节”的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于/System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python:无法打开文件“esptool.py”、CMake 不断从 cygwin python 中获取 Python,如何从 Windows 安装的 Python 中获取、Error: Can‘t find Python executable “python“, you can set the PYTHON env variable、Python - 数据分析,查找包含 python 字典的多个 python 字典之间的键值匹配的相关知识,请在本站寻找。

本文标签: