[英]Removing User Input from the printed output in Python
我有一個程序,要求用戶輸入名稱(例如,里斯本),並且屬於該用戶名的其他任何用戶都將與輸出的用戶輸入(例如,里斯本)具有相同的國家(例如,Jade,John)。 這是我的JSON文件:
{
"user1":{
"Country":[
"China",
"USA",
"Nepal"
],
"Name":[
"Lisbon"
]
},
"user2":{
"Country":[
"Sweden",
"China",
"USA"
],
"Name":[
"Jade"
]
},
"user3":{
"Country":[
"India",
"China",
"USA"
],
"Name":[
"John"
]
}
}
例如,如果用戶輸入為Lisbon,則將為輸出:
Lisbon
Jade
John
我想從輸出中刪除什么用戶輸入,以便預期結果是:
Jade
John
這是我的代碼:
def Country():
userName = raw_input("Enter user's name: ")
with open('listOfUsers.json') as f:
data = json.load(f)
def getId(name):
for userId, v in data.items():
if v['Name'][0] == name:
return userId;
id = getId(userName)
for k, v in data.items():
if any(x in data[id]['Country'] for x in v['Country']):
print (v['Name'][0])
以下為我工作
def Country():
userName = raw_input("Enter user's name: ")
with open('listOfUsers.json') as f:
data = json.load(f)
def getId(name):
for userId, v in data.items():
if v['Name'][0] == name:
return userId;
id = getId(userName)
for k, v in data.items():
if any(x in data[id]['Country'] for x in v['Country']):
if v['Name'][0] != userName:
print (v['Name'][0])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.