2015-11-12 41 views
-3

我遇到各種各樣的麻煩與此Python代碼,在編碼不是很好,但到目前爲止,這也水漲船高:它有排序「海峽」對象有沒有屬性「追加」

students = input("Students: ") 
print('Class Roll') 
myList = students.append() 
myList.sort() 
print(students[0]) 
print(students[1]) 
print(students[2]) 
print(students[3]) 
print(students[4]) 

名單在順序是:彭伊萬艾倫喬迪梅西

It comes back with this: 
Traceback (most recent call last): 
    File "program.py", line 12, in <module> 
    myList = students.append() 
AttributeError: 'str' object has no attribute 'append' 

請幫助容易理解的語言,我需要有這個權利進步到下一輪的代碼。

+1

'input'應該從用戶這是該類型海峽 –

+0

你的意思'的輸入students.split()'? –

回答

0

看一看在Official Python Tutorial開始。

myList中= students.append()

在這一行,你基本上要創建通過附加什麼(因爲參數列表爲空)將字符串students列表myList

下面的代碼也可能是你需要什麼,只要你在你的問題已經描述:

students = input("Students: ") 

myList = students.split() 
myList.sort() 

print('Class Roll') 
for student in myList: 
    print(student) 
+0

我不會推薦Codecademy。他們的Python課程和解析器真的很難找到,經常導致新的SO問題。 – TigerhawkT3

+0

@ TigerhawkT3嗯,我同意,有時候他們的Python解析器會拒絕運行完全有效的代碼,從而產生問題。不過,我覺得初學者會更容易,因爲沒有設置Python等的麻煩。另外,他們提供了一個適當的指南和練習題來開始使用Python。但顯然,對於經驗豐富的程序員來說,官方教程是一條路。 –

+0

它也是另一種方式,只要分析器運行,它們的分析器就允許錯誤的代碼。用分號結束每個語句。 – TigerhawkT3

3

你需要看看official Python tutorial,它將解釋函數,方法和類型。簡而言之,您正試圖通過將任何內容不添加到字符串來創建list。你不能這樣做。也許是「學生」你問的是一個空間分隔的字符串,在這種情況下,你可以通過簡單地使用它split()創建list

students = input('Students: ') 
mylist = sorted(students.split()) 
print('Class Roll', *mylist, sep='\n') 
+0

可以理解你在那裏說什麼,但是我需要把所有的名字都編碼在一起,這個編碼只是把每個字母放在一個學生的另一個字符之間。感謝您一直以來的幫助。 –

+1

我不明白你遇到的問題,特別是「把每個字母隔開一個學生的另一個。」 – TigerhawkT3

相關問題