Python 编写一个允许用户输入播放器的程序';改变他们的名字和薪水
这是我在这方面取得的进展,但我不确定如何再次调用该过程:Python 编写一个允许用户输入播放器的程序';改变他们的名字和薪水,python,python-3.3,Python,Python 3.3,这是我在这方面取得的进展,但我不确定如何再次调用该过程: Chelsea_Salaries_2014 = {'Jose Mourinho':[53, 163500, 'Unknown']} Chelsea_Salaries_2014['Eden Hazard']=[22, 185000, 'June 2017'] Chelsea_Salaries_2014['Fernando Torres']=[29, 175000, 'June 2016'] Chelsea_Salaries_2014['Jo
Chelsea_Salaries_2014 = {'Jose Mourinho':[53, 163500, 'Unknown']}
Chelsea_Salaries_2014['Eden Hazard']=[22, 185000, 'June 2017']
Chelsea_Salaries_2014['Fernando Torres']=[29, 175000, 'June 2016']
Chelsea_Salaries_2014['John Terry']=[32, 175000, 'June 2015']
Chelsea_Salaries_2014['Frank Lampard']=[35, 125000, 'June 2014']
Chelsea_Salaries_2014['Ashley Cole']=[32, 120000, 'June 2014']
Chelsea_Salaries_2014['Petr Cech']=[31, 100000, 'June 2016']
Chelsea_Salaries_2014['Gary Cahill']=[27, 80000, 'June 2017']
Chelsea_Salaries_2014['David Luiz']=[26, 75000, 'June 2017']
Chelsea_Salaries_2014['John Obi Mikel']=[26, 75000, 'June 2017']
Chelsea_Salaries_2014['Nemanja Matic']=[25, 75000, 'June 2019']
Chelsea_Salaries_2014['Marco Van Ginkel']=[20, 30000, 'June 2018']
Chelsea_Salaries_2014['Ramires']=[26, 60000, 'June 2017']
Chelsea_Salaries_2014['Oscar']=[21, 67500, 'June 2017']
Chelsea_Salaries_2014['Lucas Piazon']=[19, 15000, 'June 2017']
Chelsea_Salaries_2014['Ryan Bertrand']=[23, 35000, 'June 2017']
Chelsea_Salaries_2014['Marko Marin']=[27, 35000, 'June 2017']
Chelsea_Salaries_2014['Cesar Azpilicueta']=[23, 55000, 'June 2017']
Chelsea_Salaries_2014['Branislav Ivanovic']=[29, 67500, 'June 2016']
Chelsea_Salaries_2014['Ross Turnbull']=[22, 17000, 'June 2017']
Chelsea_Salaries_2014['Demba Ba']=[28, 65000, 'June 2016']
Chelsea_Salaries_2014['Oriol Romeu']=[22, 15000, 'June 2015']
search_input = input('Welcome Jose. What player would you like to search for? ')
print('His Current Salary is £' + str(Chelsea_Salaries_2014[search_input][1]))
print()
new_salary = input('What would you like to change his salary to? ')
if new_salary is 200000:
print('Salary has been changed to £' + new_salary)
else:
if new_salary == >100000:
print('This salary is ridiculous!')
试试这个:
search_input = input('Welcome Jose. What player would you like to search for? ')
print('His Current Salary is £' + str(Chelsea_Salaries_2014[search_input][1]))
print()
new_salary = int(input('What would you like to change his salary to? '))
if new_salary < 200000:
print('Salary has been changed to £' + new_salary)
else:
print('This salary is ridiculous!')
search\u input=input('Welcome Jose.您想搜索哪位玩家?'))
打印('他目前的工资是.'+str(切尔西工资2014[搜索输入][1]))
打印()
new_salary=int(输入('您希望将他的薪资更改为什么?'))
如果新员工工资<200000:
打印('薪资已更改为“+”新薪资)
其他:
打印(‘这工资太荒谬了!’
一些评论:
new_salary is 200000
检查身份(两个对象是否相同)不相等(两个对象是否具有相同的值);你想要新的工资==200000
new\u-salary
,就像你从input
获得的一切一样,都是一个字符串;您可以使用new\u salary=int(输入(…)
解决此问题Chelsea_Salories_2014
;为此,将新值分配回字典Chelsea_Salaries_2014[search_input][1]=new_Salaries
请阅读。只需将代码包含在一个循环中。。。do-例如,在按下一个特定键或写下一个保留名称之前,如果new_salary是200000:
不太可能做你想做的事-new_salary
是一个字符串,在解释器中尝试(100000*2)是200000
。@RodXavier,您应该已经推荐了本教程的内容。虽然例如添加int
很有用,但您不需要复制整个代码来显示这一点(事实上,这样做会使发现更改变得更困难),并且说出您所做的事情会很有用。此外,这实际上并没有回答OP的问题(如何再次调用该过程)。200000是最大值。下面的任何内容都可以。谢谢这是一个真正的帮助
def change_salary(salaries):
search_input = input('Welcome Jose. What player would you like to search for? ')
print('His Current Salary is £{0:,}'.format(salaries[search_input][1]))
new_salary = int(input('What would you like to change his salary to? '))
if new_salary <= 200000:
salaries[search_input][1] = new_salary
print('Salary has been changed to £{0:,}'.format(new_salary))
else:
print('This salary is ridiculous!')
while True:
change_salary(Chelsea_Salaries_2014)
choice = input("Go again? y/n ")
if choice.lower() in ('n', 'no'):
break