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

为啥ma.groups()返回的值不是 ('imooc') 而 是 ('imooc',)

pa=re.compile(r'(imooc)',re.I)

str1='imooc python'

ma=pa.match(str1)

ma.groups()

以上的代码执行后返回的结果是   ('imooc',)

我想请教一下大神为啥返回的 不是    ('imooc')    而是  ('imooc',)  ?   为啥后面有一个逗号?匹配的不是  (imooc)  吗?

正在回答

5 回答

这句代码,其实主要是让以元组方式返回,而元组是以逗号分隔的。当元组中只包含一个元素时,需要在元素后面添加逗号。

pa=re.compile(r'(imooc)',re.I)


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

('imooc')相当于字符串imooc,如果要创建只包含一个字符串的元组('imooc',)表示,

0 回复 有任何疑惑可以回复我~

python 返回单元素的tuple时,会自动添加‘,’ 

0 回复 有任何疑惑可以回复我~

感谢回答!

但是视频里的语句  pa=re.compile(r'(imooc)',re.I)   中逗号  ,  在单引号外面,匹配的内容不应该是   (imooc)  吗?

0 回复 有任何疑惑可以回复我~

‘imooc'代表一个字符串

而('imooc',)加了,代表一组

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为啥ma.groups()返回的值不是 ('imooc') 而 是 ('imooc',)

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