2010-01-17 4 views
1
위의 코드는이 오류 던지는 이유
list1 = [a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z] 

for item in list1: 
    print item 

확실하지 :파이썬 나가서 설명하자면 NameError

당신은에 문자열을 넣어야 할
NameError: "name 'a' is not defined" 

답변

12

따옴표를 올바르게 사용하는 것 외에도 알파벳을 다시 입력하지 마십시오.

>>> import string 
>>> string.ascii_lowercase 
'abcdefghijklmnopqrstuvwxyz' 
>>> L = list(string.ascii_lowercase) 
>>> print L 
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', ... 
>>> help(string) 
+2

글쎄, 문자열은 iterable, 그래서 할 수있다 : for string.ascii_lowercase : print (s) –

+0

팁 주셔서 감사! :) – 3zzy

+0

아무 것도 가져올 필요가 없습니다. [chr (i) in i (97,123)] ' 일반 구형 파이썬에서 모든 소문자를 가져와야합니다. 대문자의 경우'range (65,91) '입니다. – Mike

7

(더블)

list1 = ["a","b","c",...] 

+0

Aaah! : P 고마워요 – 3zzy

+0

그래, 우리 모두가 블락 헤드를 안다는 것을 알 것 같아. 때로는 너무 명백하다. D – Leo

+1

두 배 또는 작은 따옴표 이건 상관 없다. – SilentGhost

2

문자열을 작동해야 인용을 리터럴은 따옴표로 묶어야합니다. :)

list1 = ["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"] 
1

이전 게시물의 장점을 고르고 선택하면 문자열을 반복 할 수 있기 때문에 어떻게 할 것입니다.

>>> import string 
>>> for letter in string.ascii_lowercase: 
...  print(letter) 
... 
1

파이썬은 이미 정의 된 무언가에 사용할 수없는 경우 나, 문자의 목록을 작성해야하는 경우는

' or "

0

에 묶어 갈까요, 변수로 목록에 구성원을 해석 성병 LIB, 나는 정말이 목록뿐 아니라 문자열이 필요 경우,이 양식을 사용 :

punc = list(r";:`[email protected]#$%^&*()_-+=[]{}\|,./<?>") 
vowels = list("aeiou") # or sometimes list("aeiouy") 

모든 여분의 시세보다 훨씬 간단 쉼표를 사용하고 있으며 독자에게 나는 문자열이라는 의미가 아니라 목록을 원한다는 것을 분명히 의미했습니다.

1

모든 언어는 상수와 이름/변수를 구별해야합니다. 가장 혼란스러운 것은 문자열 상수와 식별자/이름/변수를 구분해야 할 때입니다.

쉘 (sh, bash, ksh, csh, cmd.com 등)은 상수를 사용하는 경향이 있습니다. 그래서 당신은 상수를 타이핑 할 수 있고 그 값을 원할 때 이름/변수 앞에 특수 문자 (유닉스 셸의 경우 $, cmd.com의 경우 % 등)를 붙입니다.

$ echo hello 
hello 
$ echo $PWD 
/home/tzot 
$ cd /tmp 
$ cd $OLDPWD 

다른 대부분의 일반적인 프로그래밍 언어는 다른 방법으로 주위 그래서, 상수보다 훨씬 더 많은 변수를 사용하는 경향이 : 당신은 그냥 변수의 이름을 입력하고 (일반적으로) 따옴표로 문자열 상수를 묶습니다 ('', "", [] 등) :

# assumed: a_name= "the object it points to" 

>>> print ("a constant") 
a constant 
>>> print (a_name) 
the object it points to 
관련 문제