我可以在python中读取所有csv
个文件:
import glob
for files in glob.glob("*.csv"):
print files
但是我只想读取仅.csv
作为后缀的文件。例如
我只想读
file.csv
而不是
file.x.csv
或
file.x.y.csv
这样做的好方法是什么?
答案 0 :(得分:5)
您可以使用count
import glob
for files in glob.glob("*.csv"):
# print all files that contain only .csv
if files.count('.') == 1:
print files
答案 1 :(得分:1)
添加像
这样的守卫if '.' not in os.path.basename(files)[:-4]
答案 2 :(得分:0)
您可以在每个字符串的末尾使用与.csv匹配的正则表达式,filename是末尾带有.csv的字符串的变量。
import re
if re.search('\.csv', filename):
do something
答案 3 :(得分:0)
使用filter()
和正则表达式。
import glob
import re
flt = re.compile(r'^[^.]+\.csv$',re.I)
for f in filter(flt.match,glob.glob('*.csv')):
print(f)
此处的正则表达式假定文件名中只有一个句点。您的需求可能需要不同的正则表达式。