jcpython2 发表于 2022-5-25 23:24:56

join()用法

temp = '1234'
temp.join('-')
'-'
temp.join('567')
'51234612347'
temp.join('abc')
'a1234b1234c'

我想输出1-2-3-4所以我用了join('-'),但是输出结果只有 -

换成567 或者abc也没有问题

为啥?

isdkz 发表于 2022-5-25 23:26:20

>>> '-'.join('1234')
'1-2-3-4'
>>>

jcpython2 发表于 2022-5-25 23:29:08

isdkz 发表于 2022-5-25 23:26


我也试了,确实可以
但是为啥我那个只输出了一个 - ?

jcpython2 发表于 2022-5-25 23:31:09

是不是join(sub)sub必须为多个字符串??

isdkz 发表于 2022-5-25 23:31:25

本帖最后由 isdkz 于 2022-5-25 23:38 编辑

jcpython2 发表于 2022-5-25 23:29
我也试了,确实可以
但是为啥我那个只输出了一个 - ?

因为 temp.join('-') 是在 '-' 的字符之间插入 temp 的值,

'-' 本来就只有一个字符,就没有什么字符间了,所以得出的结果还是 '-'

临时号 发表于 2022-5-25 23:37:23

join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。
所以,'1234'.join('-')的意思其实是将'1234'插入'-'中,但'-'只有一个字符,所以python认为没有地方插入,只返回了'-'
如果要实现你的需求的话,可以这样写:
'-'.join('1234')

jcpython2 发表于 2022-5-26 09:08:54

临时号 发表于 2022-5-25 23:37
join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。
所以,'1234'.join('-')的意思其实是 ...

谢谢
页: [1]
查看完整版本: join()用法