久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

python3.x - python 中的maketrans在utf-8文件中該怎么使用

瀏覽:162日期:2022-07-05 10:59:36

問(wèn)題描述

我寫(xiě)了一個(gè)處理文本的文件就是把文本中所有的符號(hào)都替換掉,替換成空格。用的python中maketrans和translate。其中在使用對(duì)于ASCII編碼的文件時(shí)是正常的,但對(duì)于utf-8文件時(shí),就報(bào)錯(cuò),提示maketrans中的參數(shù)不等長(zhǎng),但是明明是一樣長(zhǎng)的啊:

File '/Users/lgq/Desktop/p3.py', line 10, in text_to_words

'abcdefghijklmnopqrstuvwxyz ')

ValueError: the first two maketrans arguments must have equal length

我查了一下說(shuō)是maketrans在utf-8下不能用,那我在utf-8下該怎么替換掉字符呢,求各位大神指點(diǎn)。

def text_to_words(the_text): ''' Return a list of words with all punctuation removed,and all in lowercase. ''' my_substitutions = the_text.maketrans(# If you find any of these'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!'#$%&()*+,-./:;<=>?@[]^_`{|}~’',# Replace them by these'abcdefghijklmnopqrstuvwxyz ') # Translate the text now. cleaned_text = the_text.translate(my_substitutions) wds = cleaned_text.split() return wdsdef get_words_in_book(filename): ''' Read a book from filename, and return a list of its words.''' f = open(filename, 'r', encoding = 'utf-8') content = f.read() f.close() wds = text_to_words(content) return wdsbook_words = get_words_in_book('alice.txt')print('There are {0} words in the book, the first 100 aren{1}'.format(len(book_words), book_words[:100]))

問(wèn)題解答

回答1:

首先 這兩個(gè)字符串長(zhǎng)度不相等, ' 是一個(gè)字符, 也是一個(gè)字符你可以用 len() 查看。然后關(guān)于字符串什么的問(wèn)題,最好說(shuō)明 python 的版本

maketrans 參數(shù)長(zhǎng)度不相等

my_substitutions = the_text.maketrans(# If you find any of these'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!'#$%&()*+,-./:;<=>?@[]^_`{|}~’',# Replace them by these'abcdefghijklmnopqrstuvwxyz ')

測(cè)試代碼:

from string import translate, maketransdef text_to_words(the_text): ''' Return a list of words with all punctuation removed,and all in lowercase. ''' my_substitutions = maketrans(# If you find any of these'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!'#$%&()*+,-./:;<=>?@[]^_`{|}~’',# Replace them by these'abcdefghijklmnopqrstuvwxyz ') # Translate the text now. cleaned_text = the_text.translate(my_substitutions) wds = cleaned_text.split() return wdstext_to_words(’ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!'#$%&()*+,-./:;<=>?@[]^_`{|}~’測(cè)試’)

output

[’abcdefghijklmnopqrstuvwxyz’, ’xe6xb5x8bxe8xafx95’]

這是 python2 的運(yùn)行結(jié)果

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 亚洲在线视频 | 欧洲亚洲精品久久久久 | 亚洲视频在线观看一区二区三区 | 伊人伊人 | 久久久久久1 | 国产一区二区三区四区在线观看 | 欧美视频在线播放 | 日韩在线资源 | 99热精品在线 | 欧美成人免费在线视频 | 九九在线精品 | 国产高清毛片 | 一级黄色生活视频 | 亚洲人人艹 | 久久艹久久 | 91亚洲福利 | 亚洲人成中文字幕在线观看 | 成年人视频免费在线看 | 在线观看国产 | 性培育学校羞耻椅子调教h 欧美精品网站 | 99久热精品| 亚洲视频一区二区三区 | 国产一区在线不卡 | 欧美日韩精品综合 | 国产一区二区视频在线观看 | 精品国产高清一区二区三区 | 国产在线视频在线 | 国产精品久久久久久久久久东京 | 一区二区三区亚洲精品国 | 二区在线视频 | 在线视频 欧美日韩 | 日韩视频在线观看不卡 | 成人欧美 | 99re视频| 欧美成人午夜视频 | www视频在线观看 | 日韩在线观看视频一区 | 人人艹人人 | 影音先锋资源av | 九九免费在线观看 | 亚洲精品国产综合区久久久久久久 |