我不知道如何 return 并打印函数结果。 (我正在制作一个python通讯录程序)
I don't know how to return and print the function result. (I am making a python address book program)
def search_namecard():
find_IG = input("The IG of the person you are looking for : ")
with open('memberinfo_.txt') as f:
datafile = f.readlines()
for line in datafile:
if find_IG in line:
return line
return False
while True:
print("INSERT(1), SEARCH(2), LIST(3), MODIFY(4), DELETE(5), EXIT(0)")
menu = get_menu()
if menu==1:
new_card = get_namecard_info()
with open("memberinfo_.txt", mode='a') as f:
f.write(new_card.printCard())
namecard_list.append(new_card)
elif menu==2:
if search_namecard() != True :
print(line)
else:
print("Not Found")
我制作了一个地址簿程序,接收个人信息并将其存储在一个txt文件中。我正在尝试添加搜索功能,但我使用的是 readlines() 函数。当我在地址簿中找到 Instagram ID 时,我想显示此人的信息,但我很好奇如何 return 函数中的 'line' 变量。
enter image description here
您 return 函数中的一行作为没有名称的值。您需要将值保存在某处才能像这样使用它:
search_result = search_namecard()
if search_result:
print(search_result)
else:
print("Not found")
您需要将函数的 return 存储在 if
子句之外的局部变量中,以便稍后打印。像这样
while True:
print("INSERT(1), SEARCH(2), LIST(3), MODIFY(4), DELETE(5), EXIT(0)")
menu = get_menu()
if menu==1:
new_card = get_namecard_info()
with open("memberinfo_.txt", mode='a') as f:
f.write(new_card.printCard())
namecard_list.append(new_card)
elif menu==2:
line = search_namecard()
if line:
print(line)
else:
print("Not Found")
在这里您可以直接在 if
中使用 line
因为它 return 的任何字符串(空字符串除外)都将采用真值。
def search_namecard():
find_IG = input("The IG of the person you are looking for : ")
with open('memberinfo_.txt') as f:
datafile = f.readlines()
for line in datafile:
if find_IG in line:
return line
return False
while True:
print("INSERT(1), SEARCH(2), LIST(3), MODIFY(4), DELETE(5), EXIT(0)")
menu = get_menu()
if menu==1:
new_card = get_namecard_info()
with open("memberinfo_.txt", mode='a') as f:
f.write(new_card.printCard())
namecard_list.append(new_card)
elif menu==2:
if search_namecard() != True :
print(line)
else:
print("Not Found")
我制作了一个地址簿程序,接收个人信息并将其存储在一个txt文件中。我正在尝试添加搜索功能,但我使用的是 readlines() 函数。当我在地址簿中找到 Instagram ID 时,我想显示此人的信息,但我很好奇如何 return 函数中的 'line' 变量。
enter image description here
您 return 函数中的一行作为没有名称的值。您需要将值保存在某处才能像这样使用它:
search_result = search_namecard()
if search_result:
print(search_result)
else:
print("Not found")
您需要将函数的 return 存储在 if
子句之外的局部变量中,以便稍后打印。像这样
while True:
print("INSERT(1), SEARCH(2), LIST(3), MODIFY(4), DELETE(5), EXIT(0)")
menu = get_menu()
if menu==1:
new_card = get_namecard_info()
with open("memberinfo_.txt", mode='a') as f:
f.write(new_card.printCard())
namecard_list.append(new_card)
elif menu==2:
line = search_namecard()
if line:
print(line)
else:
print("Not Found")
在这里您可以直接在 if
中使用 line
因为它 return 的任何字符串(空字符串除外)都将采用真值。