我想访问目录中的所有文件。但我只能访问目录中的第一个文件。
如何访问目录中的任何文件?
我的代码:
import os
path = r'C:\Python27\aisources'
sfile=raw_input("What is your filename to check? ")
if os.path.exists(sfile): #-->sfile is user input to check file present / not
with open(sfile,'r') as f:
print 'its present'
else:
print 'not there'
该路径包含以下文件:
a1
a2
a3
但是如果a1是原始输入,它只会返回当前状态。对于a1和a2,它会导致'not there',而不是它存在于路径中。
请帮忙!答案将不胜感激!
答案 0 :(得分:2)
您实际上并未使用完整路径,请尝试使用os.path.join
:
path = 'C:/Python27/aisources/'
sfile = raw_input("What is your filename to check? ")
if os.path.exists(os.path.join(path,sfile)): #-->sfile is user input to check file present / not
with open(os.path.join(path,sfile),'r') as f:
print('its present')
else:
print('not there')
os.path.join(path,sfile)
假设您正在检查每个文件的目录'C:/Python27/aisources/'
。
您还可以使用chdir
更改目录:
path = 'C:/Python27/aisources/'
os.chdir(path)
sfile=raw_input("What is your filename to check? ")
if os.path.exists(sfile):
with open(sfile,'r') as f:
print('its present')
else:
print('not there')