我决定修改以下 while 循环并在函数内部使用它,以便循环可以取任何值而不是 6。
i = 0
numbers = []
while i < 6:
numbers.append(i)
i += 1
我创建了以下脚本,以便我可以使用变量(或更具体地说是参数)而不是 6。
def numbers(limit):
i = 0
numbers = []
while i < limit:
numbers.append(i)
i = i + 1
print numbers
user_limit = raw_input("Give me a limit ")
numbers(user_limit)
当我不使用 raw_input() 并简单地从脚本中输入参数时它工作正常但现在当我运行它时(在 Microsoft Powershell 中)光标在问题后不断闪烁在 raw_input() 中被询问。然后我必须按 CTRL + C 来中止它。可能在 raw_input() 之后没有调用该函数。
现在它给出了如图所示的内存错误。
请您参考如下方法:
您需要将user_limit 转换为Int:
raw_input() 返回值是 str 语句使用的是 int
def numbers(limit):
i = 0
numbers = []
while i < limit:
numbers.append(i)
i = i + 1
print numbers
user_limit = int(raw_input("Give me a limit "))
numbers(user_limit)
输出:
Give me a limit 8
[0, 1, 2, 3, 4, 5, 6, 7]
