Pyschool测验-字符串连接

问题描述 投票:2回答:3

这是测验问题:

添加两个字符串或制作相同字符串的多个副本。

示例:

greetings =“ Hello World”

len(greetings)#获取字符串的长度

 11

greetings [0]#获取第一个字符

 'H'

打印下划线(“ Good Day”)

 Good Day
 ________

#给定一个字符串,编写一个函数,将该字符串与相同长度的'_一起返回。

我的第一次尝试是:

def underline(title): 
  print title
  print len(title) * '_'

...这在视觉上可以通过,但也返回'None'值。 (为什么会这样?)所以我尝试了:

def underline(title): 
  print title, \nlen(title) * '_'

...并得到“连续行字符后出现意外字符”错误。在Google遇到此错误后,转过来这里没有多大帮助。

python escaping string-concatenation string-literals
3个回答
3
投票

嗯,你不想打印这些字符串,你想返回它们。

因此,创建一个将它们组合在一起的字符串(用换行符分隔),然后将其返回。

def underline(title):
    return title + '\n' + len(title) * '_'

2
投票

引用您的换行符

def underline(title): 
    print title, '\n', len(title) * '_'

Jeff的要点(这就是您的语句返回None的原因,我指出了导致此行继续错误的原因。

正如错误所言,行继续符\在其后不包含任何字符:)


0
投票

[我在pyschool中尝试其中一个练习题时遇到了这个问题

答案:

def underline(title):
            return title + '\n' + '_' *l en(title)
© www.soinside.com 2019 - 2024. All rights reserved.