我如何用回圈、字典和 if 陳述句撰寫命令如果我想要字典串列的輸出結果和其他輸入列印一個句子這是我的程式有人可以找到錯誤的解決方案
def phone_guide():
guide_number = input("Enter a number:")
numbers = {"Amal": 1111111111, "Mohammed": 2222222222, "Khadijah": 3333333333, "Abdullah": 4444444444}
While guide_number == 1111111111:
print("Amal")
elif guide_number == 2222222222:
print("Mohammed")
elif guide_number == 3333333333:
print("khadijah")
elif guide_number == 4444444444:
print("Abdullah")
elif guide_number != numbers:
print("Sorry, the number is not found")
#This mean the number has to be from the dictionary list
else:
print("This is invalid number")
#This mean if the number less or more than 10 number or different value or string
phone_guide()
uj5u.com熱心網友回復:
您需要解決多個問題。縮進錯誤,回圈有問題。您需要遍歷字典并檢查值是否存在。
def phone_guide():
print "Enter a number:"
guide_number = input()
numbers = {"Amal": 1111111111, "Mohammed": 2222222222, "Khadijah": 3333333333, "Abdullah": 4444444444}
for key,value in numbers.items():
if guide_number == value:
print(key)
return
print("Sorry, the number is not found")
phone_guide()
uj5u.com熱心網友回復:
首先,name: number如果您想檢查號碼,存盤起來會不必要地復雜。有可能像這樣逆轉number: name嗎?
numbers = {1111111111: "Amal", 2222222222: "Mohammed", ...}
其次,您不需要所有這些 if/elif/else 陳述句。您可以檢查專案是否在字典鍵或值中。
1111111111 in numbers.keys()或者1111111111 in numbers.values()
要匹配您的電話號碼有效性,您可以使用這樣的正則運算式并檢查typeof(phone_number) == int.
import re
invalid = 1234568
valid = 0123456789
re.match(r'\d {10}', valid)
>>> True
re.match(r'\d {10}', invalid)
>>> False
鑒于所有這些資訊,您應該能夠得出解決方案。
uj5u.com熱心網友回復:
您的代碼中有多個錯誤。再次了解python的基礎知識。
def phone_guide():
guide_number = int(input("Enter a number:"))
numbers = {"Amal": 1111111111, "Mohammed": 2222222222, "Khadijah": 3333333333, "Abdullah": 4444444444}
for key, value in numbers.items():
if guide_number == value:
return key
return "This is invalid number"
uj5u.com熱心網友回復:
def phone_guide():
guide_number = input("Enter a number:")
numbers = {"Amal": 1111111111, "Mohammed": 2222222222, "Khadijah": 3333333333, "Abdullah": 4444444444}
if guide_number == 1111111111:
print("Amal")
elif guide_number == 2222222222:
print("Mohammed")
elif guide_number == 3333333333:
print("khadijah")
elif guide_number == 4444444444:
print("Abdullah")
elif guide_number != numbers:
print("Sorry, the number is not found")
else:
print("This is invalid number")
像上面那樣寫你的代碼。在 python 中,你只能在 if 之后使用 elif。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/334844.html
上一篇:回圈遍歷串列中的嵌套字典
