2017-03-03 48 views
-1

新手在這裏。 我想使用raw_input()從目錄中選擇一個以.raw結尾的文件。如何將*作爲文字傳遞給python?謝謝。在raw_input python中逃脫*星號

if len(fname) == 0: 
    fname = '*.raw' 
try: 
    fname = open(fname) 
except: 
    print fname, ('File Not Found') 
exit() 
+0

你不能那樣做。 shell執行globbing,所以你需要一種方法來模擬它。 –

+0

此外,格式化您的代碼 –

+0

它似乎你正在尋找'glob.glob()',但它不是很清楚;你的代碼不會包含'raw_input()' –

回答

2

它不能這樣工作 - shell通配符是不同的野獸。

您需要使用glob.glob()或類似名稱來擴展通配符模式。

pattern = raw_input('Enter filename or pattern') 
files = glob.glob(pattern) 
if not files: 
    print('No matching files.') 
open(files[0]) # ...