如何迭代 Python 中单个字符的可预测进程?
How to iterate over a a predictable progression of single characters in Python?
我有一系列网站想看。
每个页面的名称是这样的:
book_page = ("http://target.com/books/char/X/")
其中 X 是字母表中的单个字母。所以范围将是
mylist = ['A','B','C'] etc.
- 首先,是否有创建该字母列表的表达式?
其次,我如何直接在 FOR 语句中使用它,或者这可能吗?例如
for alpha in range(mylist):
mypage = "http://target.com/books/char/" + alpha + "/"
当我 运行 这样做时,我得到一个错误,因为范围应该是一个整数,但我宁愿有一个文本字符串。我知道我可以做这样的事情(如下),但我想知道是否还有其他方法?
到目前为止的工作代码:
for x in range(1, 3):
alpha = mylist[x]
mypage = "http://target.com/books/char/" + alpha + "/"
print alpha, mypage
你自己的生成器函数怎么样?
def charrange(start, end):
return (chr(i) for i in xrange(ord(start), ord(end)))
for c in charrange('A', 'D'):
print c
输出:
A
B
C
它遵循与 range
相同的语义,其中 end
是互斥的。遍历包含范围:
def icharrange(start, end):
return (chr(i) for i in xrange(ord(start), ord(end)+1))
for c in icharrange('A', 'D'):
print c
输出:
A
B
C
D
该字母序列已经在 string.ascii_uppercase
中。 for
遍历序列的元素。
import string
for letter in string.ascii_uppercase:
...
为了遍历 mylist
中的值,没有理由调用 range
。相反,您可以简单地说:
for alpha in mylist:
mypage = "http://target.com/books/char/" + alpha + "/"
这将使 alpha
成为您期望的值。
我有一系列网站想看。
每个页面的名称是这样的:
book_page = ("http://target.com/books/char/X/")
其中 X 是字母表中的单个字母。所以范围将是
mylist = ['A','B','C'] etc.
- 首先,是否有创建该字母列表的表达式?
其次,我如何直接在 FOR 语句中使用它,或者这可能吗?例如
for alpha in range(mylist): mypage = "http://target.com/books/char/" + alpha + "/"
当我 运行 这样做时,我得到一个错误,因为范围应该是一个整数,但我宁愿有一个文本字符串。我知道我可以做这样的事情(如下),但我想知道是否还有其他方法?
到目前为止的工作代码:
for x in range(1, 3):
alpha = mylist[x]
mypage = "http://target.com/books/char/" + alpha + "/"
print alpha, mypage
你自己的生成器函数怎么样?
def charrange(start, end):
return (chr(i) for i in xrange(ord(start), ord(end)))
for c in charrange('A', 'D'):
print c
输出:
A
B
C
它遵循与 range
相同的语义,其中 end
是互斥的。遍历包含范围:
def icharrange(start, end):
return (chr(i) for i in xrange(ord(start), ord(end)+1))
for c in icharrange('A', 'D'):
print c
输出:
A
B
C
D
该字母序列已经在 string.ascii_uppercase
中。 for
遍历序列的元素。
import string
for letter in string.ascii_uppercase:
...
为了遍历 mylist
中的值,没有理由调用 range
。相反,您可以简单地说:
for alpha in mylist:
mypage = "http://target.com/books/char/" + alpha + "/"
这将使 alpha
成为您期望的值。