【发布时间】:2018-03-16 22:07:19
【问题描述】:
我想知道是否有更简单的方法来实现这段代码所要实现的目标。现在代码在列表中创建所有 4 位数字(如果数字以 0 开头,则不算作 4 位数字,例如 0123),并且数字中没有数字重复。因此,例如 1231 不在列表中。最好我想要一个代码来完成这个代码正在做的事情,但取决于在调用它时向函数提供的参数 N 会创建这种包含所有 N 位数字的列表。我希望这不是不可能理解的,因为我是编程新手。
def guessables():
'''creates a list of all 4 digit numbers wherest every
element has no repeating digits inside of that number+
it doesn't count as a 4 digit number if it starts with a 0'''
guesses=[]
for a in range(1,10):
for b in range(0,10):
if a!=b:
for c in range(0,10):
if b!=c and a!=c:
for d in range(0,10):
if c!=d and d!=b and d!=a:
guesses.append(str(a)+str(b)+str(c)+str(d))
return guesses
【问题讨论】:
-
你愿意做的是一个函数,它自己调用,每次加一个数字。
标签: python python-3.x