2017-06-05 21 views
-1

"sun - moon"のように文字列が割り当てられたtxtファイルを持っていて、特定の文字列に割り当てられた値を取得したい場合もしあればあなたもディスクスペースを節約するために、ロード・プロセスのセーブファイルではgzipを統合することができPython 3:ファイル内の特定の文字列を検索する

user_input = input() 

if user_input in open('base.txt').read(): 
    print(True) # it's just to be sure that everything really works 
else: 
    base_file = open('base.txt', 'a+') 
    base_file.write(user_input) 
    base_file.write('\n') 
    base_file.close() 
+0

わかりません。辞書を受け入れるようなキーペアのファイルがあり、 "sun"を検索して "moon"を返したいとしますか?それが正しい場合、私はピクルスの使用を検討します。 – 16num

+0

はい、そうです。私はそれを達成するためにどこに移動するのか分かりません。 –

答えて

0
import pickle 

myDictA = {'sun': 'moon'} 

with open('myFile.pkl', 'w') as file: 
    pickle.dump(myDict, file) 

with open('myFile.pkl', 'r') as file: 
    myDictB = pickle.load(file) 

print("myDictA:", myDictA) 
print("myDictB:", myDictB) 

:それは、ファイルのための新しいペアを作成してそれを書くユーザー入力から来るし、そうでない場合でしょう欲しいです。もう1つの方法は、同じ方法で書かれていて、1000倍高速であると言われるcPickleを使用することです。

0

現在のコードに少し追加。

user_input = input() 
flag=1 
with open('base.txt') as f: 
    data=f.read() 
    if user_input in data: 
    print(data) 
    flag=0 
if flag: 
    base_file = open('base.txt', 'a+') 
    base_file.write(user_input) 
    base_file.write('\n') 
    base_file.close() 
関連する問題