2016-10-06 4 views
-1

私はさまざまなテキストファイルに多くのデータを持っています。各ファイル名には、私が選択した単語が含まれていますが、多くの「ぎこちなし」も含まれています。例えば、私はdatapoints-(my chosen name)-12iu8w9e8v09wr-140-ad92-dw9ファイル名の一部からのみテキストファイルからデータをロード

と呼ばれるテキストファイルを持っているので、そうdatapoints文字列は、(my chosen name)は、私が定義し、自分のコードに抽出する方法を知っているもので、すべてのテキストファイルであるが、最後のビットはランダムです。そして私は、私が持っているすべてのテキストファイルでその部分を削除したいと思っていません。少し時間がかかるでしょう。

これらのテキストファイルをロードしたいだけですが、最終的には "ばかげた"を使わずに各ファイルをどのようにターゲットにするかは分かりません。私はちょうど "(私の選ばれた名前)を含むファイルを読み込んで"残りのことを心配しないようなことを言いたい。

+1

ランダムな文字列のビットを対象とする正規表現を使用を使用してすべてのファイルのリストを返します。 Pythonライブラリが役立つはずです:https://docs.python.org/2/library/re.html – Grant

+1

ファイル名のランダム部分にワイルドカードを使ってディレクトリ内のファイルを検索します:http:///stackoverflow.com/questions/3348753/search-for-a-file-using-a-wildcard-ファイルのリストをループし、正規表現を使用してランダムな文字列を検索して各ファイルのスティを読み取り編集します。 – Grant

答えて

2

これはglob module

import glob 
your_words = ['word1', 'word2'] 
files = [] 
# find files matching 'datapoint-your words-*.txt' 
for word in your_words: 
    # The * is a wildcard, your words are filled in the {}. one by one 
    files.extend(glob.glob('datapoint-{}-*.txt'.format(word))) 

print files 
関連する問題