我有一个csv文件,第一行是标题,第1(a)列是我要查找的文件名,例如I\u suck_at_Python.xlsx第2(B)列是我想把它移到的文件夹名,例如,Lex sucks at Python。在
我在Openpyxl上也做过类似的事情,只是我只在一行上做了。 下面是我的代码。感谢你的帮助。在
另外,我在编码方面遇到了很多问题,尤其是这一行:
with open(csv_file, 'r') as f:
这个文件最初是xlsx,但后来我不得不将其保存为csv。以前的'r'是'rb',然后我读到我不得不改变它和编码细节,但没有用。在
总之,下面是实际问题的代码:
^{pr2}$代码运行,但它直接转到else语句,这意味着它不会拾取文件夹中的文件。再次感谢。在
我想我应该提一下,如果有人建议用完全不同的方式来做这件事,我很高兴,比如熊猫,纽比,openpyxl,xlrd等等
编辑:所以,我想在A2中搜索该文件,找到后将其移动到B2中的文件夹中,然后循环到下一行直到文件的结尾。文件夹已存在于与.xlsx文件相同的目录中。CSV文件中的采样线:
File Name Folder Name
i_suck_at_python.xlsx Lex sucks at Python
python_test.xlsx Python Test
根据你的描述,我假设你正在尝试做以下事情:
发件人:
收件人:
^{pr2}$首先,您需要在路径字符串中添加一个
r
前缀。这将阻止Python尝试转义任何反斜杠。或者你可以用正斜杠代替。在当使用
csv.reader()
时,应该使用python3.x中的newline=''
参数打开文件,而在python2.x中需要rb
。在使用} ,但如果只是为了确保可以复制它,则最好在移动过程中使用异常处理,即如果找不到该文件,则会生成异常。在
in
不会测试文件是否存在于给定的文件夹中,而是检查左侧的字符串是否可以在右侧的字符串中找到。要实际测试文件是否存在,可以使用^{相关问题 更多 >
编程相关推荐