0
我的程序很簡單,你輸入你的名字,你選擇你想要輸入的名字的數量,並打印出所有的組合......我唯一的問題是無法添加if語句以產生這幾行代碼,因此用戶將無法輸入重複的名稱或在名稱中使用任何數字。我已經嘗試了幾件事情,但我不記得確切的代碼有沒有可能有一個if/else語句與排列
names = []
for i in range(n):names.append(raw_input("Enter name "+str(i+1)+": "))
count = 0
def perm(a,k=0):
global count
if(k==len(a)):
print a
count += 1
else:
for i in xrange(k,len(a)):
a[k],a[i] = a[i],a[k]
perm(a, k+1)
a[k],a[i] = a[i],a[k]
我完整的代碼可以發現here,如果你想將其粘貼並運行它,它有點樂趣。換句話說,如果有人可以幫助我只是在哪裏或如何achomplish這個if/else語句的事實,圍繞
(raw_input("Enter name "+str(i+1)+": "))
行代碼。謝謝大家提前
「if validate_name(names,name):」一直告訴我它的未定義,我不知道該怎麼辦,我是否向上移動def? @ThmeiEsi –
是的,對不起。我應該想到這一點。 –
搞亂了一下它只打印「輸入名字一個」名字後一直輸入無盡 –