搜尋

首頁  >  問答  >  主體

字符编码 - python把汉字字符串中的'\n‘去掉

从文件中读出的一个汉字字符串
用这个句话判断是否包含回车:

python    if '\n' in mystring:
        print type(mystring)
        #<type 'unicode'>
        mystring.replace('\n', '')
        #does not work
        mystring.replace(u'\n', u'')
        #does not work
        mystring.encode("gbk")
        mystring.replace("\n", "")
        #does not work
        mystring.encode("utf-8")
        mystring.replace("\n", "")
        #does not work
        mystring.encode("ascii")
        mystring.replace("\n", "")
        #UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-20
        print mystring

这该如何是好?请指教!

大家讲道理大家讲道理2830 天前727

全部回覆(2)我來回復

  • 怪我咯

    怪我咯2017-04-17 14:37:24

    我想到的是,既然是從檔案讀進的,那為什麼不用strip呢?

    python    file = open('file.txt', 'rt')
        for line in file:
            line = line.strip()
    

    回覆
    0
  • 高洛峰

    高洛峰2017-04-17 14:37:24

    字串的 replace 方法不會修改原字串的內容

    嘗試

        a = "woshishazi\n!!!"
        a = a.replace('\n', '')
    

    回覆
    0
  • 取消回覆