2017-03-06 167 views
-1

我是一個新手我想實現一個代碼,如果我鍵入文本,它會查看文件內部,並會說如果有匹配的東西,如果不匹配任何東西將顯示沒有記錄但是這下面的代碼是不能做出正確的輸出任何想法非常感謝你提前輸入字符串並在一個文件中搜索Python

input = raw_input("Input Text you want to search: ") 
    with open('try.txt') as f: 
     found = False 
     if input in f: 
     print "true" 
     found = True 
     if not found: 
      print('no record!') 
+1

這甚至不會運行,因爲縮進沒有意義。 – khelwood

回答

0

與執行檢查,爲了防止從文件中的文本匹配的字符串,你需要閱讀的文件:

with open('try.txt') as f: 
    data = f.read() 

然後檢查一個字符串的文件中找到,檢查是這樣的:

if input_ in data: 
    pass 

此外,兩個小技巧:

1)正確縮進你的代碼。每個縮進級別使用四個空格。

2)不要使用保留關鍵字來命名變量。而不是輸入,使用input_或其他東西。

0

你實際上並沒有讀取文件,嘗試像file_content = f.read(),然後做一個if input in file_content

+0

謝謝你現在的工作:) – lec

0

如果找到或「沒有記錄!」,則應打印「true」找不到 我沒有包含你的布爾型「找到」變量,因爲它沒有被使用。 首先將文件數據讀入「數據」變量作爲一個字符串,然後我們在運營商

input = raw_input("Input Text you want to search: ") 

with open('try.txt', 'r') as myfile: 
    data=myfile.read() 

if input in data: 
    print "true" 
else: 
    print('no record!') 
相關問題