簡體   English   中英

接受以空格分隔的整數輸入(無效的文字錯誤)Python

[英]Taking in integer input separated by space (invalid literal error) Python

因此,此代碼的目標是從輸入中刪除重復項,然后打印出沒有重復項的列表,我想我明白了,但我似乎不記得如何使用空格輸入輸入,而我什么也沒有到目前為止,查找對我的情況非常有幫助。 這是我的代碼。

def eliminateDuplicates(lst):
    strnumbers = str(lst)
    listnumbers = list(strnumbers.split())    
    newlist = []
    for number in listnumbers:
        if number not in newlist:
            newlist.append(number)
    return newlist

def main():
    numbers = int(input("Enter numbers separated by space"))
    print("The distinct numbers are: ", eliminateDuplicates(numbers)) 

main()

你做不到

int("1 2 3")

但是你可以做

[int(x) for x in "1 2 3".split()]

錯誤之一來自您的int(input()) ...但是我認為wim是正確的

strnumbers = str(lst)
listnumbers = list(strnumbers.split())  

我認為這種愚蠢是導致您出現問題的原因( , [和字符正在進入您的數字)。 只需遍歷輸入lst

您還需要在函數中發送適當的列表,這意味着您需要更改以下行:

numbers = int(input("Enter numbers separated by space"))

我會把這留給你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM