初心者のpythonプログラマーとして、私はいくつかの演習を行っていますが、なぜこのコードが私にとってうまくいかないのか分かりません。重複したコードのデバッグを取り除く
今私の運動はこれです:
が与えられたリストからすべての重複を削除し、元の順序を維持しながら、リストとして残りの要素を返しますremoveDuplicates(somelist)という名前の関数を定義し、テストします。また、指定されたコマンドライン引数に対してremoveDuplicates関数を呼び出してmain()関数を定義し、結果のリストを出力します。
そしてここで、これまでに私のコードです:
import sys
def main():
userInput = int(input(""))
removeDuplicates(somelist)
print (unique)
def removeDuplicates(userInput):
duplicate = set()
unique = []
for x in userInput:
if x not in duplicate:
unique.append(x)
duplicate.add(x)
print (unique)
def removeDuplicates(somelist):
duplicate = set()
unique = []
for line in sys.stdin:
line = line.rstrip()
if x not in sys.stdin:
unique.append(x)
duplicate.add(x)
return unique
if __name__ =='__main__':
main()
そして私は関係なく、私は何をすべきかのエラーコードを取得していない保ちます。このコードのエラーコードです:あなたはsomelist
宣言されていない
Traceback (most recent call last):
File "removeDuplicates.py", line 31, in <module>
main()
File "removeDuplicates.py", line 5, in main
removeDuplicates(somelist)
NameError: name 'somelist' is not defined`
インデントを修正できますか?ポストされたコードは、構文/インデントエラーをスローします。 – MSeifert
誤った字下げによって構文エラーが発生しましたか?私はこの質問が "再現不可能な、またはタイプミス"として閉じられる必要があるのだろうかと思います。 – halfer