为了账号安全,请及时绑定邮箱和手机立即绑定

关于字符串切片的一个问题

#课后任务中:要求定义一个函数来大写一个字符串的首字母,我开始写的是

def firstcharupper(s):

return upper(s[0])+s[1:]

而答案给的是

return s[0].upper()+s[1:]

在我理解,s应该是定义的函数中的一个变量,一个字符串,那为什么不能放在upper函数的括号里,而是以s[0].upper()的形式调运?

正在回答

1 回答

因为upper()是内置在Python中的一个方法,调用的形式是对象.方法,单独使用upper()时upper相当于一个函数,这个时候upper需要定义

1 回复 有任何疑惑可以回复我~
#1

zeroandzoro 提问者

s[0].upper()的括号中是不能有参数的,对吗?意思是在这儿,upper是一种方法而非函数,如果想作为函数需要自己定义 def upper(s)对吗?
2017-06-21 回复 有任何疑惑可以回复我~
#2

zeroandzoro 提问者

非常感谢!
2017-06-21 回复 有任何疑惑可以回复我~
#3

KLMW 回复 zeroandzoro 提问者

是的,没错
2017-06-21 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758623    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

关于字符串切片的一个问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信