[英]Creating a set filled with letters from the alphabet in python
我正在嘗試從字母表中創建一組字母,但我不確定為什么代碼不起作用。 Python 給我一個錯誤,說“未定義全局名稱'a'”。 有任何想法嗎? 先感謝您。
s = set()
s = {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}
a
, b
, ... 本身不是字符串,它們是名稱。 Python 字符串必須用單引號 ( 'a'
)、雙引號 ( "a"
) 或三引號 ( """a"""
或'''a'''
) 括起來。 因此,您的代碼的正確版本是:
# s = set() - this is useless, the next line is already creating a set
s = {'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'}
話雖如此,更簡潔的方法是使用 Python 的內置set和string.ascii_lowercase ,如下所示:
import string
s = set(string.ascii_lowercase)
試試這個
import string
s = set(string.ascii_lowercase)
@lenik 答案是最好的,但最好記住,每個字符串也是一個可迭代的序列,可以傳遞給set()
。 因此,您可以代替單字母文字列表:
letters = set("abcdefghijklmnopqrstuwxyz")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.