我的初始代碼是Python 2.7.8中的一個基本計算器,但是現在我已經決定了我想包含一個函數,用戶可以輸入多個值。在Python中查找用戶輸入的重複值
一旦輸入了這個函數,函數就可以運行用戶剛剛輸入的值存儲到一個變量(函數參數)中,然後獲知它們是否輸入了重複值。現在,這些值在逗號分隔並插入進入一個列表並且函數運行。
我已經創建了一個函數,該函數已經將變量等同於用戶鍵入算法時發生的'AlgorithmListEntry'的用戶輸入。
def findDuplicates(AlgorithmListEntry):
for i in len(range(AlgorithmListEntry)):
for j in len(1,range(AlgorithmListEntry)):
if AlgorithmListEntry[i]==AlgorithmListEntry[j]:
return True
return False
凡函數查找參數以及範圍,但是這並沒有因爲另一個錯誤的工作
for i in len(range(AlgorithmListEntry)):
TypeError: range() integer end argument expected, got list.
我現在收到錯誤
for i in len(AlgorithmListEntry):TypeError: 'int' object is not iterable
爲了便於查看我只插入了與我的問題相關的部分代碼
i = True #starts outer while loop
j = True #inner scientific calculations loop
def findDuplicates(AlgorithmListEntry):
for i in len(AlgorithmListEntry):
for j in len(1(AlgorithmListEntry)):
if AlgorithmListEntry[i]==AlgorithmListEntry[j]:
return True
return False
while i==True:
UserInput=raw_input('Please enter the action you want to do: add/sub or Type algorithm for something special: ')
scienceCalc=('Or type other to see scientific calculations')
if UserInput=='algorithm':
listEntry=raw_input('Please enter numbers to go in a list:').split(",")
AlgorithmListEntry = list(listEntry)
print AlgorithmListEntry
print "The program will now try to find duplicate values within the values given"
findDuplicates(AlgorithmListEntry)
#i = False
個
問題
爲什麼我收到這兩種錯誤的?
怎樣才能在我的程序中成功實現這個功能?這樣用戶可以收到關於他們輸入的值是否包含重複值的反饋?
Doh,你真的需要清理你的代碼,關於PEP8,希望很多人都願意通讀。嚴重的是,在你的縮進上工作,並且在'AlgorithmListEntry = list(listEntry)'中綁定列表的名字是可怕的:-)。 – 2015-02-06 20:40:50