-1
내 프로그램의 일부로 텍스트 파일에서 이름을 입력하고 입력 한 이름이 목록에 있는지 여부를 나타내는 함수에 정렬 된 이름 목록을 전달하고 싶습니다. 이름이 발견되면 그 위치 (즉, 색인)도 인쇄됩니다.Python 3 : 사용자 입력으로 텍스트 파일을 검색 하시겠습니까?
파일 이름은 단지 30 개이지만 두 번째 기능을 실행하면 검색 할 이름을 입력 한 후에 표시됩니다.
이름을 찾을 수 없습니다.
이름을 찾을 수 없습니다.
이름이 검색되었습니다.
이름을 찾을 수 없습니다.
이름을 찾을 수 없습니다.
... 30 개 이름 모두에 대해. 여기
def main():
infile = open('names.txt', 'r')
line = infile.readline()
while line !='':
line = line.rstrip('\n')
print(line)
line = infile.readline()
print('\nHere are the names sorted:\n')
infile = open("names.txt", 'r')
names = infile.readlines()
names.sort()
for line in names:
line = line.rstrip('\n')
print(line)
line = infile.readline()
search_file(line) # I don't this this is the correct way to
# pass the sorted list of names?
def search_file(line):
search = open('names.txt', 'r')
user_search = input('\nSearch for a name(Last, First): ')
#item_index = line.index(search)
print()
with open('names.txt', 'r') as f:
for line in f:
if user_search in line:
print('name found')#, item_index)
else:
print('name not found.')
여기
업데이트 된 코드 : 항상
def search_file(line):
user_search = input('\nSearch for a name(Last, First): ')
print()
try:
item_index = line.index(user_search)
print(user_search, 'found at index', item_index)
except ValueError:
print('not found.')
나는 "ValueError를 제외하고/시도"사용하여 시도와 각 라인에서 함께 사용자 문자열을 검색 할 수 있지만, 지금은 단지 ValueError를 또는 "을 (를) 찾을 수 없습니다"인쇄 문 –
스물셋겠습니까 @ 인쇄됩니다 새롭고 업데이트 된 코드를 볼 필요가 있습니다. –
원래 게시물에 업데이트 된 부분을 추가했습니다. 용서하십시오, 나는 코딩에 아주 새롭다. –