【问题标题】:How do I iterate through the alphabet?如何遍历字母表?
【发布时间】:2013-06-15 11:32:33
【问题描述】:

在 Python 中,我可以简单地 ++ 一个字符吗?这样做的有效方法是什么?

我想遍历具有 www.website.com/term/#、www.website.com/term/a、www.website.com/term/b、www.website.com/term/ 的 URL c、www.website.com/term/d ... www.website.com/term/z 格式。

【问题讨论】:

  • 有 308,915,776 (26^6) 种方法可以从任何字母中组合出六个字母的长字符串 - 只是为了让您知道您是否已经超越了只做一个字母。

标签: python python-2.7 alphabet


【解决方案1】:

您可以使用string.ascii_lowercase,它只是一个方便的小写字母字符串,

>>> from string import ascii_lowercase
>>> for c in ascii_lowercase:
...     # append to your url

【讨论】:

  • 供参考string.ascii_lowercase提供'abcdefghijklmnopqrstuvwxyz'
【解决方案2】:

除了string.ascii_lowercase,您还应该看看ordchr 内置插件。 ord('a') 将为您提供 'a' 的 ascii 值,chr(ord('a')) 将返回字符串 'a'

使用这些,您可以通过字符代码递增和递减,并足够轻松地来回转换。 ASCII table 总是一个很好的书签。

【讨论】:

  • 另外,如果你有man,那么你可以通过man ascii获取ASCII表。
  • 这里注意,chr(x) 会返回字符串类型。
【解决方案3】:

我无法发表评论,所以我只想给@Brian 回答一个代码。 https://stackoverflow.com/a/17182751/1425790

url=www.website.com/term
my_char=ord('a') # convert char to ascii
while my_char<= ord('z'):
   my_char+=1 # iterate over abc
   my_url=url+chr(my_char)  # convert ascii to char
   do_something(my_url)

【讨论】:

    猜你喜欢
    • 2017-10-10
    • 2013-05-23
    • 1970-01-01
    • 2022-11-14
    • 2012-04-02
    • 2015-05-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多