[英]How do I convert a list of integers to ints?
我正在制作一個程序,只要數字低於300,就可以從最低到最高對數字進行排序,但我無法弄清楚如何將用戶輸入更改為列表。 這是我的代碼:
List1=[]
List2=[]
var=1
thing=input("Insert numbers here")
List1.append(thing)
while var < 300:
for that in List1:
if that < var:
List2.append(number)
var = var + 1
print(List2)
當我運行代碼時,它表示在第8行中,字符串無法與int進行比較。 請幫忙。 提前致謝。
由於這似乎沒有在任何循環中,我看不出你如何在列表中有多個條目..也許你可以輸入空格分隔數字? 使用python 3 ,這可以像這樣最小化(減去錯誤處理):
nums = [x for x in list(map(int, input("Enter numbers: ").split())) if x < 300]
nums.sort()
要么..
nums = input("Enter numbers: ") # Get the number string
nums = nums.split() # Split the string by space character
nums = list(map(int, nums)) # call int() on each item in the list, converting to int
nums.sort() # sort the list of numbers
nums = [x for x in nums if x < 300] # remove any numbers 300 or over.
輸入輸出:
Enter numbers: 1 5 301 3000 2
[1, 2, 5]
如果輸入以逗號分隔的數字,則以下單行將起作用:
>>> sorted(list(input("Enter numbers: ")), reverse=True)
Enter numbers: 1, 2, 3
[3, 2, 1]
要刪除數字<300:
>>> sorted([num for num in input("Enter numbers: ") if num < 300], reverse=True)
Enter numbers: 1, 301, 299, 300, 2, 3
[299, 3, 2, 1]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.