Попробуйте с этим:
list = sorted(key_words.keys(), key=lambda d: d[0])
with open('C:/Users-------/requirement.txt', 'r') as outfile:
lines = outfile.readlines()
for line in lines:
line = line.strip()
if line == '':
continue
# Create an empty list which will contain all the word that match
words_found = []
for word in list:
# if the word match then add it to the list words_found
if word in line:
words_found.append(word)
print("(\'Text:\',\"{}\"")' ".format(line))
print("(\'Keys:\',\"{}\"")' ".format(words_found))
# if the list of words found it's not empty then the test passed
if(words_found):
print("Test Passed")
else:
print("Test Failed")
идея состоит в том, чтобы создать список найденных слов, а затем распечатать их все, что я использую format Operation, и вы можете найти руководство о том, как его использовать здесь . И строка if(words_found):
проверяет, пуст ли пул.
В этом случае вам это не понадобится, но если вы хотите решить только вторую точку, может использовать оператор for else
, как описано в документах
4.4 break and continue Statement, а else Clause on Loops
Операторы цикла могут иметь условие else; он выполняется, когда цикл завершается исчерпанием списка (с for) или когда условие становится ложным (с показом), но не тогда, когда цикл завершается оператором break.
blockquote>Уменьшая на одной вкладке отступ else else вашего оператора if, он стал else оператора for, поэтому он будет выполнен, только если для никогда не было разрыва проблема решена.
list = sorted(key_words.keys(), key=lambda d: d[0]) with open('C:/Users-------/requirement.txt', 'r') as outfile: lines = outfile.readlines() for line in lines: line = line.strip() if line == '': continue line_strings = line.split(' ') for word in list: if word in line: print(word) print("Test Pass") break else: print("Test Fail") print(line + "\n")
Изменить
Чтобы разбить ключ на описание и перевод, нам просто нужно разбить два слова в запятой со встроенной функцией split
list = sorted(key_words.keys(), key=lambda d: d[0]) with open('C:/Users-------/requirement.txt', 'r') as outfile: lines = outfile.readlines() for line in lines: line = line.strip() if line == '': continue # Create an empty list which will contain all the word that match words_found = [] for word in list: description, translation = word.split(",") # if the word match then add it to the list words_found if description in line: words_found.append(description) print("(\'Text:\',\"{}\"")' ".format(line)) print("(\'Keys:\',\"{}\"")' ".format(words_found)) # if the list of words found it's not empty then the test passed if(words_found): print("Test Passed") else: print("Test Failed")
Я думаю, вы должны иметь большой опыт в области аппаратного обеспечения / электроники, чтобы создать профиль аппаратного обеспечения.
Когда я захотел протестировать свое приложение на разных версиях телефонов Samsung, я импортировал профили оборудования с их веб-сайта: в качестве примера проверьте ссылку ниже, вы можете скачать zip-файл и затем загрузить его в Android Studio.
https://developer.samsung.com/technical-doc/view.do?v=T000000287
Но на самом деле создать профиль оборудования неэффективно, пока возможно, но я не рекомендую, если вам нужен конкретный телефон, зайдите на их сайт и установите их пакеты.