저는 을 통해 파이썬을 배우고 있습니다. 지루한 것들을 자동화하십시오과 나는 꽤 이해가 안되는 것을 실행 중입니다.파이썬 : <str과 int 사이에 지원되지 않습니다
목록의 요소를이 형식으로 인쇄하는 간단한 for 루프를 만들려고합니다 : W, X, Y, and Z
.
내 코드는 다음과 같습니다
spam = ['apples', 'bananas', 'tofu', 'cats']
def printSpam(item):
for i in item:
if i < len(item)-1:
print (','.join(str(item[i])))
else:
print ("and ".join(str(item[len(item)-1])))
return
printSpam(spam)
나는 응답이 오류를 얻을 :
Traceback (most recent call last):
File "CH4_ListFunction.py", line 11, in <module>
printSpam(spam)
File "CH4_ListFunction.py", line 5, in printSpam
if i < len(item)-1:
TypeError: '<' not supported between instances of 'str' and 'int'
어떤 도움에 감사드립니다. 초보자를 도와 주셔서 감사합니다. 각 요소 위에
'for ... in ...'이 어떻게 작동하는지 오해하고 있습니다. 'i'는 이미리스트의 문자열이고, 인덱스는 아니다. 따라서'<'는 문자열과 정수를 비교하고 있으며, item [i]는 의미가 없다. 또한, 당신은 하나의 아이템에'join '하려고 시도하고 있습니다! –
기본적으로' "s"<4'을 (를)하고 있습니다. 이것은 말이되지 않습니다. – Carpetsmoker
이 경우'i'는 문자열입니다. 문자열을 목록의 길이와 비교하려고합니다. – Harrison