【发布时间】:2018-07-30 20:34:35
【问题描述】:
我写 Python 已经有一段时间了。对于使这三行简洁的最佳方法是什么?
my_range = range(97, 123) # I want a-z
my_range.append(32) # I want space as well
my_range = sorted(my_range) # I want it sorted (whilst not needed)
~~~~~~~~~~~~~~~~~~~~~
import random
count = 0
string = ""
my_range = range(97, 123)
my_range.append(32)
my_range = sorted(my_range)
while len(string) != 27:
string = string + chr(random.choice(my_range))
print string
~~~~~~~~~~~~~~~~
【问题讨论】:
-
您使用的是 Python 2 吗?因为否则这会引发错误;
range没有append()方法.. -
这是一个意见导向的问题。你在这里看起来很简洁。有些人可能会建议在一行上进行堆叠操作(即
my_range = sorted(range(97, 123).append(32)),但正如您所见,虽然这会使它更短,但它会增加复杂性和阅读难度。 -
我认为不需要对您的范围进行排序。你为什么这样做?
-
我同意,我不认为有必要,但发帖人想要的问题是,所以我把它留在那里。 :)
标签: python python-2.7 list range