关于使Python代码更简洁的建议
我刚刚开始学习python,刚刚编写了一个程序,允许用户查找斐波那契序列的第n项。我已经测试过了,它看起来像预期的那样工作。我的问题是如何使我的代码更简洁或更具python风格。如有任何建议或提示,将不胜感激关于使Python代码更简洁的建议,python,Python,我刚刚开始学习python,刚刚编写了一个程序,允许用户查找斐波那契序列的第n项。我已经测试过了,它看起来像预期的那样工作。我的问题是如何使我的代码更简洁或更具python风格。如有任何建议或提示,将不胜感激 values = [0,1] n1 = 2 while True: # input and loop to limit the input range. try: n = int(input('Please enter p
values = [0,1]
n1 = 2
while True: # input and loop to limit the input range.
try:
n = int(input('Please enter position of fibonacci sequence you wish to know.'))
break
except:
print('That\'s not a valid input')
if n < 3: #calculation block
print (n)
else:
while n1 != n:
n2 = values[0] + values[1]
values[0] = values[1]
values[1] = n2
n1 +=1
print (n2)
值=[0,1]
n1=2
为True时:#输入并循环以限制输入范围。
尝试:
n=int(输入('请输入您希望知道的斐波那契序列的位置'))
打破
除:
打印('这不是有效的输入')
如果n<3:#计算块
打印(n)
其他:
而n1!=n:
n2=值[0]+值[1]
值[0]=值[1]
数值[1]=n2
n1+=1
打印(n2)
使用函数会使您的代码更加“pythonic”-简洁可能不是您的首要任务:
def get_user_input():
while True: # input and loop to limit the input range.
try:
n = int(input('Please enter position of fibonacci sequence you wish to know.'))
return n
except:
print('That\'s not a valid input')
def get_nth_fib_number(nth):
values = [0, 1]
current_fib = 2
while current_fib <= nth:
values.append(values[-2] + values[-1])
current_fib += 1
return values[nth]
get_nth_fib_number(get_user_input())
def get_user_input():
为True时:#输入并循环以限制输入范围。
尝试:
n=int(输入('请输入您希望知道的斐波那契序列的位置'))
返回n
除:
打印('这不是有效的输入')
def获取第n个光纤编号(第n个):
值=[0,1]
电流_fib=2
虽然目前的谎言,这可能是更好的。