我正在使用python进行文件操作。
我有一个文件路径为:
filepath = "E:/ABC/SEM 2/testfiles/all.txt"
当我使用python打开文件时,它会告诉我:
IOError: No such file:
但是,该文件存在于驱动器上
这可能是因为窗户无法正确地拍摄"SEM 2",因为它包含空间
如何处理窗口路径中的此类空白?
path = r"C:UsersmememeGoogle DriveProgramsPythonfile.csv"
关闭r"string"中的路径也很好地解决了这个问题。
路径中的空格没有问题,因为您没有使用"shell"来打开文件。下面是来自windows控制台的一个会话来证明这一点。你做错了什么
Python 2.7.2 (default, Jun 12 2011, 14:24:46) [MSC v.1500 64 bit (AMD64)] on wi
32
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>>
>>> os.makedirs("C:/ABC/SEM 2/testfiles")
>>> open("C:/ABC/SEM 2/testfiles/all.txt","w")
<open file 'C:/ABC/SEM 2/testfiles/all.txt', mode 'w' at 0x0000000001D95420>
>>> exit()
C:UsersGnibbler>dir "C:ABCSEM 2testfiles"
Volume in drive C has no label.
Volume Serial Number is 46A0-BB64
Directory of c:ABCSEM 2testfiles
13/02/2013 10:20 PM <DIR> .
13/02/2013 10:20 PM <DIR> ..
13/02/2013 10:20 PM 0 all.txt
1 File(s) 0 bytes
2 Dir(s) 78,929,309,696 bytes free
C:UsersGnibbler>
尝试在文件路径变量中加双引号
""E:/ABC/SEM 2/testfiles/all.txt""
检查文件的权限,或者在任何情况下都可以考虑重命名文件夹以删除空间
破解Mac:
path = '/Volumes/Public/ABY/Documents/Musiq/slumdog millonaire/Mausam and Escape.mp3'
nPath = path.replace(' ', '\ ')
print(nPath)
输出:
/Volumes/Public/ABY/Documents/Musiq/slumdog millonaire/Mausam and Escape.mp3
(WINDOWS-AWS解决方案)
通过在文件和路径周围加上三个引号来解决WINDOWS问题。
优点:
1)防止悄悄被忽略的排除。
2)带有空格的文件/文件夹将不再出现错误。
aws_command = 'aws s3 sync """D:/""" """s3://mybucket/my folder/" --exclude """*RECYCLE.BIN/*""" --exclude """*.cab""" --exclude """System Volume Information/*""" '
r = subprocess.run(f"powershell.exe {aws_command}", shell=True, capture_output=True, text=True)
我发现了一个简单的破解方法,尝试在双引号之前添加一个单引号,比如:
os.system(r'"C:Program FilesGoogleChromeApplicationchrome.exe"')
为我工作
双反斜杠\
将解决问题
subprocess.run('type "C:\Users\nameofuser\blackdrive - somecorp\Desktop\seadlines_data.txt"',shell=True)
您可以使用三引号"""
,如下所示:
filepath = """E:/ABC/SEM 2/testfiles/all.txt"""
它对我有效
import os
设置工作目录
os.chdir("""C:/Users/admin/nht1/OneDrive - quarrycubicle/Desktop/Docs/AI Data Analysis/Tai lieu tham khao""")
os.getcwd()
输出[1]:"C:\Users\admin\nht1\OneDrive-quarrycubicle\Desktop\Docs\AI Data Analysis\Tai lieu tham khao"