为了账号安全,请及时绑定邮箱和手机立即绑定

从 cmd 行运行时 Python 不创建文件

从 cmd 行运行时 Python 不创建文件

慕姐8265434 2022-04-23 16:59:43
我有一个创建 python 脚本来清理 csv 文件。脚本文件“CleanCSV.py”中的代码如下import csvfilepath_i = 'C:\Source Files\Data Source\Flat File Source\PatientRecords.csv'filepath_o = 'C:\Python\PatientRecords.csv'rows = []with open(filepath_i, 'r', newline='') as csv_file:    csv_reader = csv.reader(csv_file, delimiter=',', quotechar='"')    with open(filepath_o, 'w', newline='' ) as writeFile:        writer = csv.writer(writeFile, lineterminator='\r')        for row in csv_reader:            row[3] = row[3].replace("\n","").replace("\r","")             rows.append(row)         writer.writerows(rows)从 python 编辑器运行时,这工作正常。但从命令行运行时不创建文件,如下所示。C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64>python C:\Python\CleanCSV.py 我也试过这个C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python36_64>pythonw C:\Python\CleanCSV.pyw 我提供了对文件夹的完全访问权限,但它仍然没有在目的地创建任何文件。如果我遗漏了什么,请告诉我。另外请建议是否可以优化此代码。我不能使用像熊猫这样的外部包,所以我用 csv 来做。提前致谢。延期当我更改为 x 进行写入设置时with open(filepath_o, 'x', newline='' ) as writeFile:令我惊讶的是,我收到了这个错误File "CleanCSV.py", line 8, in <module>    with open(filepath_o, 'x', newline='' ) as writeFile:FileExistsError: [Errno 17] File exists: 'C:\\Python\\PatientRecords1.csv'但我没有在目录中看到该文件。即使将隐藏文件设置为true。所以我运行了这个脚本。from pathlib import Pathconfig = Path(filepath_o )if config.is_file():    print('yes')    print(config)else:    print('no')得到了这个输出,但目录中没有文件!困惑。yesC:\Python\PatientRecords1.csv
查看完整描述

2 回答

?
开心每一天1111

TA贡献1836条经验 获得超13个赞

转到您的 python 脚本所在的位置。点击文件夹地址栏,输入cmd

然后命令提示符将从脚本的文件夹位置启动

然后输入cmd

python CleanCSV.py

注意:您需要将 python 添加到环境变量中。


如果您使用的是 Anaconda,请按照上述 Anaconda Prompt 中的相同步骤操作。


查看完整回答
反对 回复 2022-04-23
?
智慧大石

TA贡献1946条经验 获得超3个赞

这很令人费解。csv可能不喜欢你在open. 例如,不要使用 ,而是open(filepath_i, 'r', newline='')尝试open(filepath_i, newline='')



查看完整回答
反对 回复 2022-04-23
  • 2 回答
  • 0 关注
  • 229 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号