2016-09-08 48 views
3

我有以下路径的文件的文件:阅读蟒蛇开始与一个特定的字符串

/home/[user]/foo_01-01-2016.txt 

我需要使用通配符来读它(*)字符:

import pandas as pd 
df = pd.read_csv("/home/[user]/foo_*.txt") 

但它给文件没有找到错误。

+0

,我不认为在这种情况下,[路径扩展(https://bash.cyberciti.biz/指南/ Path_name_expansion)支持。我会使用这个:https://docs.python.org/2/library/glob.html – Marcs

+0

'*'由shell使用。如果你使用任何其他语言,你必须自己翻译它,一种方法是使用Python标准库中的'glob'(文件名扩展名为* globbing *).https://docs.python.org/3 /library/glob.html – cdarke

回答

1

您可以使用glob,但输出列表,以便通过[0]选择第一项:

import pandas as pd 
import glob 

path =r'/home/[user]' 
filename = glob.glob(path + "/foo_*.txt") 
print (filename[0]) 

df = pd.read_csv(filename[0]) 
print (df) 
+0

不错!谢谢你 – zerobyte

+0

如果我的回答很有帮助,不要忘记[接受](http://meta.stackexchange.com/a/5235/295067)它。谢谢。 – jezrael

+0

文件路径之前的'r'是什么? – zerobyte