目前,我有一个工作范围函数,可以接受并输出前3个参数,但是我对如何添加分隔符/结束符的可选第4个参数一无所知。我不确定是否应该使用sep或end。
def Practice(start, stop, step):
for i in range(start, stop+1, step):
if i%step == 0:
print(i, end=' ')
因此,如果用户在外壳程序中输入:Practice(4,24,4) 它将打印:4 8 12 16 20 20
答案 0 :(得分:0)
尝试一下: 在下面的代码中,如果不传递任何值,则step的默认值为4
e.g.1 rangePractice(4,24) # will have step=4 and separator = " "
e.g.2 rangePractice(4,24,5) # will step=4 and separator = " "
e.g.3 rangePractice(4,24,4, "-") # will have step=4 and separator = "-"
def rangePractice(start, stop, step=4, separator = " "):
for i in range(start, stop+1, step):
if i%step == 0:
print(i, end=separator)
答案 1 :(得分:0)
sep
用于分隔参数,end
用于分隔最后一个参数。它们由print
函数使用。
>>> print('boa', 'cat', 'dog', sep='=>', end='!!!\n')
boa=>cat=>dog!!!
因此,您的程序中需要end
。如果您使用sep
,则end
将被视为\n
,并且所有行将以新行打印。
def rangePractice(start, stop, step, separator = " "):
for i in range(start, stop+1, step):
if i%step == 0:
print(i, end=separator)
我建议练习这些事情,而不必从stackoverflow中获取汤匙,这将增进您的知识。
答案 2 :(得分:-1)
让参数具有默认值。 (可选)您可以在功能主体中检查用户是否传递了自己的参数(但这不是您的用例所必需的)。
def rangePractice(start, stop, step, separator=' '):
for i in range(start, stop+1, step):
if i%step == 0:
print(i, end=separator)