我会给你我的python代码(这是非常基本且很小的),如果你能告诉我我哪里错了。非常感谢,不要讨厌:)
ekt=[]
pl=[]
nm=[]
for i in range(5):
nms=raw_input("Ποιο το όνομα της χώρας?")
ekts=input("Ποια η εκταση της χώρας αυτής?")
pls=input("Ποιός είναι ο πληθυσμός της χώρας αυτής?")
nms.append(ekt)
ekts.append(ekt)
nms.append(nm)
max_ekts=-2
min_pls=-2
for i in range(5):
if ekt[i]>max_ekts:
max_ekts=ekt[i]
max_ekts_nm=nm[i]
if pl[i]>min_pls:
min_pls=pl[i]
min_pls_nm=nm[i]
sum_pls=sum_pls+pl[i]
mo_pls=max_pls/5.0
print"Χώρα με την μεγαλύτερη έκταση:",max_ekts_nm
print"χώρα με το μικρότερο πληθυσμό:",min_pls_nm
print"O μέσος όρο του πληθυσμού των 15 χωρών της Ευρωπαϊκής Ένωσης:",mo_pls
错误是:AttributeError:'str'对象没有属性'append'
您的错误很简单,看,尽管在代码的开头声明了以下列表:
ekt=[]
pl=[]
nm=[]
接下来要做的是使用那些完全相同的变量名来捕获您的输入:
nms=raw_input("Ποιο το όνομα της χώρας?")
ekts=input("Ποια η εκταση της χώρας αυτής?")
pls=input("Ποιός είναι ο πληθυσμός της χώρας αυτής?")
但是您没有在原始列表上进行追加,因此代码看起来像这样:
nms.append(ekt)
ekts.append(ekt)
nms.append(nm)
但是nms
不是原始列表,您的原始列表称为nm
,nms
是您刚刚读取的字符串。同样ekt
(您要附加的值)也不是您读取的字符串(称为ekts
),ekt
是您在代码开头声明的列表。因此,基本上,您尝试将列表追加到字符串对象,但无法完成。同样的情况也适用于以下行,请重新检查变量的名称。
当您从用户那里读取输入时,它是字符串类型-
nms=raw_input("Ποιο το όνομα της χώρας?")
nms
是字符串。之后,您尝试附加nms.append(ekt)
,但字符串类型没有附加。我想你的意思是nm.append(nms)
。
好吧,我想我已经修复了我的代码,它实际上在工作,看看吧!我尝试在字符串输入中使用.append,并且有效!!]
ekt=[]
pl=[]
nm=[]
for i in range(5):
nms=raw_input("Ποιο το όνομα της χώρας?")
ekts=input("Ποια η εκταση της χώρας αυτής?")
pls=input("Ποιός είναι ο πληθυσμός της χώρας αυτής?")
ekt.append(ekts)
pl.append(pls)
nm.append(nms)
max_ekts=-2
min_pls=-2
sum_pls=0
for i in range(5):
if ekt[i]>max_ekts:
max_ekts=ekt[i]
max_ekts_nm=nm[i]
if pl[i]>min_pls:
min_pls=pl[i]
min_pls_nm=nm[i]
sum_pls=sum_pls+pl[i]
mo_pls=sum_pls/5.0
print"Χώρα με την μεγαλύτερη έκταση:",max_ekts_nm
print"χώρα με το μικρότερο πληθυσμό:",min_pls_nm
print"O μέσος όρο του πληθυσμού των 15 χωρών της Ευρωπαϊκής Ένωσης:",mo_pls
以后我会考虑使用+ =