鍍金池/ 問(wèn)答/Python  HTML/ python 編程問(wèn)題

python 編程問(wèn)題

    import jieba
    a ='我愛(ài)北京天安門'
    #[print(i) for  i  in  jieba.cut(a)]
    cw =jieba.cut(a)
    a=''
    for i in cw:
        i += ' '
    print(i)

出來(lái)的結(jié)果為什么不是“我 愛(ài) 北京 天安門” 而是“天安門”?

如果我想出來(lái)的效果是字符串“我 愛(ài) 北京 天安門” 該如何寫?我按照下面的樣子寫了,但是末尾多了一個(gè)空格?盡管如此,我覺(jué)得下面我的寫法也很不優(yōu)美。請(qǐng)求優(yōu)美的方式?

    a ='我愛(ài)北京天安門'
    #[print(i) for  i  in  jieba.cut(a)]
    cw =jieba.cut(a)
    a=''
    for i in cw:
        a +=  i+' '
    print(a)
回答
編輯回答
笑浮塵

前一個(gè)代碼有誤吧?for循環(huán)里寫成了i而不是a,所以每次循環(huán)并沒(méi)有保留上一次,到最后就只有“天安門 ”了
后一個(gè),用for循環(huán)每次增加分詞時(shí)也都加上了空格,所以末尾會(huì)多一個(gè)空格。
優(yōu)美的方式:
我不知道jieba分詞返回的(即這里的cw變量)是不是list,如果是的話,直接:

' '.join(cw)

即可

2018年3月24日 07:42
編輯回答
夢(mèng)若殤
>>>seg_list='我愛(ài)北京天安門'
>>>print('/'.join(jieba.cut(seg_list,cut_all=False)))

>>>我/愛(ài)/北京/天安門
2017年3月26日 02:01