def FuncE():
for x in range(1,11):
print str(2*x-1) + ",",
def FuncF():
n = 7
c = "1"
for x in range(0, 9-1):
print str(x*c) + ', ',
def FuncG():
for a in range(1,51):
for b in range(a + 1,51):
for c in range(b + 1,51):
if (a*a + b*b == c*c):
print "\t\t\t",a,b,c
im使用idle(pythongui),然后在python中工作(命令行)
对于FuncE 需要打印1,3,5,7,9,11,13,15,17,19,但是当我尝试它时,它会像1,3,5,7,9,11,13,15,17,19,加上一个额外的逗号
我需要FuncF打印出1,11,111,1111,11111,11111,11111,但问题是它出现了,1,11,111,1111,11111,11111,1111111,我不想要逗号开头或结尾。我要把它们脱下来。在
那么对于函数 我试图通过使用毕达哥拉斯数字,但只使用了一个“if”命令 也不想让相同的数字出现在列中两次 当我尝试的时候:
三四五
4 3 5个
5 12 13日
6 8 10个
71317年
8 6 10个
。在
。在
等等
在这个答案中,我向您展示了python字符串的
join
方法(在google上查找“pythonstringjoin”以获得更多帮助)。这就是你在FuncE和FuncF中所要做的。在我还将函数重命名为描述函数的名称(称为self documentation)。在
我还在pythagorean函数中添加了一个集合来存储之前看到的一组数字。我还向您展示了
itertools.combinations
函数,这是一种更简单的方法来完成您所做的三重循环。使用这种方法,您可能不需要我添加的and group not in all_groups
,但我这样做是为了向您展示如何确保您还没有看到这组数字。在最后,我没有在函数内打印,而是返回了函数创建的值。在
你能在完成后把它打印出来吗?在
在
print
对象后使用逗号字符打印内容时,python会自动插入一个空格。如果你想绕过这个问题,你需要一次打印一个字符串,使用字符串插值或类似的方法。在你需要对问题的
FuncG
部分再清楚一点,我不理解你的问题。在相关问题 更多 >
编程相关推荐