破折号线?

时间:2013-11-20 04:36:24

标签: python

这是我试图根据单词中的字母数量来实现输出'_ _ _ _'的代码

def maskLetters(mask,word):
    index=0
    while index<len(word):
        print mask+mask
        index=index+1

5 个答案:

答案 0 :(得分:6)

def maskLetters(mask, word):
    print mask * len(word)

(我已经对你的mask参数的含义做了一些假设。)

答案 1 :(得分:1)

如果你想要空格

def maskLetters(mask, word):
    return ' '.join(mask * len(word))

另外

def maskLetters(mask, word):
    return ' '.join(word.translate(mask*256))

答案 2 :(得分:0)

在Python中,您可以将str乘以int,并将str重复int次返回:

def maskLetters(mask,word):
    print len(word) * mask # length of the word * mask to repeat

> maskLetters('_', 'cow')
___
> maskLetters('f','stackoverflow')
fffffffffffff

答案 3 :(得分:0)

>>> word = 'John'
>>> print repr('_ ' * len(word))
'_ _ _ _'

答案 4 :(得分:0)

另一种方式:

>>> word='Ball'
>>> ul='-'
>>> print("'{}'\n'{:{fill}^{w}}'".format(word,ul,fill=ul,w=len(word)))
'Ball'
'----'