我正在学习Python,只是试图找出如何打印由短划线分隔的多个"*"
字符,但这样可以让用户更改星号和短划线的数量。
这是我到目前为止所做的:
print('*' * n, sep = '-' * m)
其中n和m是整数。但它并没有真正发挥作用。
我想要的结果(如果n = 3且m = 2)是:
*--*--*
答案 0 :(得分:4)
>>> print(*['*']*n, sep='-'*m)
*--*--*
对于单个字符,这也可以使用:
>>> print(*('*'*n), sep='-'*m) #this can fail if you use `'**'` instead of `'*'`
*--*--*
['*']*n
在此处创建一个列表,现在我们使用print()
将此列表解压缩到*
,并使用'-'*m
作为sep
。:
>>> ['*']*n
['*', '*', '*']
答案 1 :(得分:1)
>>> sep = '-'
>>> n = 11
>>> print sep.join('*'*n)
*-*-*-*-*-*-*-*-*-*-*
答案 2 :(得分:0)
sep=("".join(["-"] * m))
print(sep.join(["*"] * n))
n
个*
以及*
m
个-
n=5
,m=4
给出以下模式。
*----*----*----*----*
n=3
,m=2
给出以下模式。
*--*--*
答案 3 :(得分:-1)
这也不错:
print ('-'*m).join(['*']*n)