class wordlist:
def is_within(word):
return 3 <= (len(word)) <= 5
def truncate_by_length(wordlist):
return filter(is_within, wordlist)
newWordlist = truncate_by_length(['mark', 'daniel', 'mateo', 'jison'])
print newWordList
기본적으로 단어의 길이에 대한 최소값과 최대 값이 주어지면 (주어진 예는 각각 3과 5), 다음과 같은 새로운 목록을 인쇄해야합니다. 주어진 원래 길이에서 그 길이 내에있는 단어. 예를 들어, mark, daniel, mateo 및 jison이라는 단어가 주어지면 mark, mateo 및 jison 만 포함하는 새 목록이 인쇄되어야합니다.파이썬 프로그래밍 : 글로벌 이름 'is_within'이 정의되지 않았습니다. 목록에 필터를 사용하고 있습니다.
내가 그것을 실행할 때마다, 나는 다음을받은 :
Traceback (most recent call last):
File "C:/Users/Makoy/Documents/AMC 125/sample.py", line 1, in <module>
class wordlist:
File "C:/Users/Makoy/Documents/AMC 125/sample.py", line 6, in wordlist
newWordlist = truncate_by_length(['mark', 'daniel', 'mateo', 'jison'])
File "C:/Users/Makoy/Documents/AMC 125/sample.py", line 5, in truncate_by_length
return filter(is_within, wordlist)
NameError: global name 'is_within' is not defined
미안 해요 내가 그렇게 멍청한 놈 소리 경우 이러한하지만 난 한 달 전에 파이썬을 공부를 시작했고 나는 완전한 초보자 해요 그것으로. 미리 감사드립니다.
'self' 다른 같은 일반 변수입니다; 메서드에 대한 첫 번째 인수의 이름이 바로 관습입니다. 그의 메소드에는'self' 매개 변수가 없으므로'self'에'NameError'를 가져옵니다. – icktoofay
좋은 하루 되세요! 나는 단지 당신이 말한 것을했으나 여전히 같은 오류를 받고 있습니다. 내가 놓친 게 있니? icktoofay가 말한 것과 똑같습니다. –
@ictoofay 그 해명에 감사드립니다, 당신은 완전히 정확하고 나의 대답을 수정했습니다. – timc