Ejercicios básicos de Python: demuestre el efecto de segmentación de palabras de la biblioteca jieba (biblioteca de fecha y hora, lectura y escritura de archivos, intente excepto, formateo de cadenas de salida, procesamiento de EOF)

Fecha de prueba: 2020/10/2

Afirmar

Ejecutar en la terminal:

pip install jieba

Instale la base de datos de segmentación de palabras jieba.

Escriba el código Python, coloque el texto chino que necesita segmentación de palabras en un archivo txt (codificación: UTF-8), luego lea el archivo y genere el resultado de la segmentación de palabras.
Utilice las funciones de la biblioteca de fecha y hora para medir el tiempo necesario para leer todo el contenido del archivo y segmentar palabras.
Cada vez que se lee un archivo y se emite cada muestra, se emite el número de archivo o el número de muestra (los números comienzan desde 1).
Los requisitos de formato del archivo de prueba:
1. Varias líneas consecutivas se consideran el mismo conjunto de muestras.
2. Separe una línea en blanco entre cada dos muestras.
3. Introduzca tres líneas en blanco después de la última muestra de prueba.
Si el archivo de prueba no se construye de acuerdo con este formato, no podrá probar todas las muestras del archivo.

Puntos de conocimiento

Referencia de
biblioteca Fecha
y hora Archivo de biblioteca Lectura y escritura
Prueba excepto Manejo de excepciones Instrucción
Formato de cadena de salida
Procesamiento EOF
UTF-8

Código

import datetime
import jieba

file_id = case_id = 0
sep = '-' * 78 + '\n'

while True:
	try:
		print('Please input the path of the test file: ')
		path = input()

		test_file = open(path, 'rt', encoding = 'utf-8')
		t0 = datetime.datetime.now();
		contents = test_file.readlines()
		t1 = datetime.datetime.now();
		print("\nReading completed. Time elapsed: " + str((t1 - t0).microseconds) + ' us.')

		file_id += 1
		print('\n{0:-^78}\n'.format('File ' + str(file_id)))
		case = ''

		for line in contents:
			if case.endswith('\n\n') == False:
				case += line
			else:
				case_id += 1
				print('----------------Case ' + str(case_id) + ':----------------\n\nIN:\n' + case[0:-1])

				t0 = datetime.datetime.now();
				result = jieba.lcut(case)
				t1 = datetime.datetime.now();
				print("Partition completed. Time elapsed: " + str((t1 - t0).microseconds) + ' us.\n\nOUT:')

				for word in result:
					print(word, end = ' ')
				print('')
				case = line
		print(sep)
	except EOFError:
		print('Exiting...')
		exit(0)

resultado

Archivo 1

Nivel completo de chino

让你别别别的别别别的你非得别别的!

在乎你的我只在乎我在乎的你是否像在乎你的我在乎我在乎的你一样在乎在乎你的我。

我有一点想点一点一点一点喝。

我不喜欢我喜欢的人喜欢我不喜欢的人。

老七写道老六想起来老五对老四说老三的老二老大了。

你什么意思?什么什么意思?问你什么意思?没什么意思。没什么意思是什么意思?就是意思意思。

大不一样,不大一样,一样不大,不一样大!

我已经上了动车准备上上海上上她。

-客服小姐:小明你是要几等座?
-小明:你们一共有几等?
-客服小姐:特等,一等,二等,等等,二等要多等一等。

你怎么知道我知不知道你知道他知道?

你以为我以为你以为什么?

今天下雨,我骑车差点摔倒,好在我一把把把把住了!

多亏跑了两步,差点没上上上上海的车。

用毒蛇的蛇毒毒毒蛇毒蛇会被毒蛇的蛇毒毒死吗?



resultado:

Please input the path of the test file:
D:\0_Study\NLP\Test Materials\普通话分词测试 - 汉语十级.txt

Reading completed. Time elapsed: 0 us.

------------------------------------File 1------------------------------------

----------------Case 1:----------------

IN:
让你别别别的别别别的你非得别别的!

Building prefix dict from the default dictionary ...
Loading model from cache C:\Users\ANDYRO~1\AppData\Local\Temp\jieba.cache
Loading model cost 0.621 seconds.
Prefix dict has been built successfully.
Partition completed. Time elapsed: 622719 us.

OUT:
让 你 别别 别的 别别 别的 你 非得 别 别的 !


----------------Case 2:----------------

IN:
在乎你的我只在乎我在乎的你是否像在乎你的我在乎我在乎的你一样在乎在乎你的我。

Partition completed. Time elapsed: 997 us.

OUT:
在乎 你 的 我 只在乎 我 在乎 的 你 是否 像 在乎 你 的 我 在乎 我 在乎 的 你 一样 在乎 在乎 你 的 我 。


----------------Case 3:----------------

IN:
我有一点想点一点一点一点喝。

Partition completed. Time elapsed: 998 us.

OUT:
我 有 一点 想点 一点 一点一点 喝 。


----------------Case 4:----------------

IN:
我不喜欢我喜欢的人喜欢我不喜欢的人。

Partition completed. Time elapsed: 996 us.

OUT:
我 不 喜欢 我 喜欢 的 人 喜欢 我 不 喜欢 的 人 。


----------------Case 5:----------------

IN:
老七写道老六想起来老五对老四说老三的老二老大了。

Partition completed. Time elapsed: 999 us.

OUT:
老七 写道 老六想 起来 老五 对 老四 说 老三 的 老二 老大 了 。


----------------Case 6:----------------

IN:
你什么意思?什么什么意思?问你什么意思?没什么意思。没什么意思是什么意思?就是意思意思。

Partition completed. Time elapsed: 996 us.

OUT:
你 什么 意思 ? 什么 什么 意思 ? 问 你 什么 意思 ? 没什么 意思 。 没什么 意思 是 什么 意思 ? 就是 意思 意思 。


----------------Case 7:----------------

IN:
大不一样,不大一样,一样不大,不一样大!

Partition completed. Time elapsed: 0 us.

OUT:
大不一样 , 不大一样 , 一样 不 大 , 不 一样 大 !


----------------Case 8:----------------

IN:
我已经上了动车准备上上海上上她。

Partition completed. Time elapsed: 998 us.

OUT:
我 已经 上 了 动车 准备 上 上海 上 上 她 。


----------------Case 9:----------------

IN:
-客服小姐:小明你是要几等座?
-小明:你们一共有几等?
-客服小姐:特等,一等,二等,等等,二等要多等一等。

Partition completed. Time elapsed: 999 us.

OUT:
- 客服 小姐 : 小明 你 是 要 几等座 ?
 - 小明 : 你们 一共 有 几 等 ?
 - 客服 小姐 : 特等 , 一等 , 二等 , 等等 , 二等 要 多 等一等 。


----------------Case 10:----------------

IN:
你怎么知道我知不知道你知道他知道?

Partition completed. Time elapsed: 995 us.

OUT:
你 怎么 知道 我 知不知道 你 知道 他 知道 ?


----------------Case 11:----------------

IN:
你以为我以为你以为什么?

Partition completed. Time elapsed: 0 us.

OUT:
你 以为 我 以为 你 以 为什么 ?


----------------Case 12:----------------

IN:
今天下雨,我骑车差点摔倒,好在我一把把把把住了!

Partition completed. Time elapsed: 998 us.

OUT:
今天 下雨 , 我 骑车 差点 摔倒 , 好 在 我 一把 把 把 把住 了 !


----------------Case 13:----------------

IN:
多亏跑了两步,差点没上上上上海的车。

Partition completed. Time elapsed: 999 us.

OUT:
多亏 跑 了 两步 , 差点 没上 上 上 上海 的 车 。


----------------Case 14:----------------

IN:
用毒蛇的蛇毒毒毒蛇毒蛇会被毒蛇的蛇毒毒死吗?

Partition completed. Time elapsed: 996 us.

OUT:
用 毒蛇 的 蛇毒 毒 毒蛇 毒蛇 会 被 毒蛇 的 蛇毒 毒死 吗 ?


------------------------------------------------------------------------------

Archivo 2

Ciencia ficción (1)

Inserte la descripción de la imagen aquíresultado:

Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí

Archivo 3

Diario de George Lam-A Lam

一于努力一于努力换个对象
一于记住一于记住创新方向
一于努力一于努力留下印象
一于记住一于记住每天向前望
一于努力一于努力换个对象
一于记住一于记住创新方向
一于努力一于努力留下印象
一于记住一于记住每天向前望
今日我就想同大家讲下耶稣
你未必钟意听不过听左好过无
我知道你地好多个念过定煲
不过听左呢只歌你一定无甘风骚
无论你同你个爱人玩左几耐
你地一定会有足够理由继续相爱
以下几段野系我最近既独白
如果你系有心的人唔好走开
你问我个日中午去左边度
我话乜你甘鬼八你想剃我撇须
我本人钟意去边度就去边度
你试下再问我我就发起牢骚
你一日八过一日你一朝懵过一朝
我叫左你去学比较有用的既野
你就日日坐系REGENT由天光八到夜
一于努力一于努力换个对象
一于记住一于记住创新方向
一于努力一于努力留下印象
一于记住一于记住每天向前望
一讲你自己就烂甘神秘
问多你两问你就指天笃地
你最怕被人知道你去边度飞
我服你真系服到你就五体投地
我唔系怕一万只系怕万一
我跟左你甘耐只系得番一个吉
我讲左甘鬼耐你知唔知我UP过乜
我甘系话你丑样只系话你核突
一于努力一于努力换个对象
一于记住一于记住创新方向
一于努力一于努力留下印象
一于记住一于记住每天向前望
寻晚你又知唔知道我去左边度
我一个傻佬自己走去红勘睇SHOW
坐系我隔离系一个单身美女
到我同巨讲多句就知道有路
我DATE左巨几日就觉得巨老土
虐待我十足好似报仇甘报
我多谢天主上帝令我而家知道
世上几千万人都系你最好
一于努力一于努力全部照旧
一于记住一于记住无谓分手
一于努力一于努力永不退后
一于记住一于记住再不争斗
一于努力一于努力全部照旧
一于记住一于记住无谓分手
一于努力一于努力永不退后
一于记住一于记住再不争斗
一于努力一于努力全部照旧
一于记住一于记住无谓分手
一于努力一于努力永不退后
一于记住一于记住再不争斗
一于努力一于努力全部照旧



resultado:


Reading completed. Time elapsed: 0 us.

------------------------------------File 3------------------------------------

----------------Case 17:----------------

IN:
一于努力一于努力换个对象
一于记住一于记住创新方向
一于努力一于努力留下印象
一于记住一于记住每天向前望
一于努力一于努力换个对象
一于记住一于记住创新方向
一于努力一于努力留下印象
一于记住一于记住每天向前望
今日我就想同大家讲下耶稣
你未必钟意听不过听左好过无
我知道你地好多个念过定煲
不过听左呢只歌你一定无甘风骚
无论你同你个爱人玩左几耐
你地一定会有足够理由继续相爱
以下几段野系我最近既独白
如果你系有心的人唔好走开
你问我个日中午去左边度
我话乜你甘鬼八你想剃我撇须
我本人钟意去边度就去边度
你试下再问我我就发起牢骚
你一日八过一日你一朝懵过一朝
我叫左你去学比较有用的既野
你就日日坐系REGENT由天光八到夜
一于努力一于努力换个对象
一于记住一于记住创新方向
一于努力一于努力留下印象
一于记住一于记住每天向前望
一讲你自己就烂甘神秘
问多你两问你就指天笃地
你最怕被人知道你去边度飞
我服你真系服到你就五体投地
我唔系怕一万只系怕万一
我跟左你甘耐只系得番一个吉
我讲左甘鬼耐你知唔知我UP过乜
我甘系话你丑样只系话你核突
一于努力一于努力换个对象
一于记住一于记住创新方向
一于努力一于努力留下印象
一于记住一于记住每天向前望
寻晚你又知唔知道我去左边度
我一个傻佬自己走去红勘睇SHOW
坐系我隔离系一个单身美女
到我同巨讲多句就知道有路
我DATE左巨几日就觉得巨老土
虐待我十足好似报仇甘报
我多谢天主上帝令我而家知道
世上几千万人都系你最好
一于努力一于努力全部照旧
一于记住一于记住无谓分手
一于努力一于努力永不退后
一于记住一于记住再不争斗
一于努力一于努力全部照旧
一于记住一于记住无谓分手
一于努力一于努力永不退后
一于记住一于记住再不争斗
一于努力一于努力全部照旧
一于记住一于记住无谓分手
一于努力一于努力永不退后
一于记住一于记住再不争斗
一于努力一于努力全部照旧

Partition completed. Time elapsed: 21945 us.

OUT:
一于 努力 一于 努力 换个 对象
 一于 记住 一于 记住 创新 方向
 一于 努力 一于 努力 留下 印象
 一于 记住 一于 记住 每天 向前 望
 一于 努力 一于 努力 换个 对象
 一于 记住 一于 记住 创新 方向
 一于 努力 一于 努力 留下 印象
 一于 记住 一于 记住 每天 向前 望
 今日 我 就 想 同 大家 讲下 耶稣
 你 未必 钟意 听 不过 听 左 好 过 无
 我 知道 你 地 好多个 念过 定煲
 不过 听 左 呢 只 歌 你 一定 无甘 风骚
 无论 你 同 你 个 爱人 玩 左 几耐
 你 地 一定 会 有 足够 理由 继续 相爱
 以下 几段 野系 我 最近 既 独白
 如果 你系 有心 的 人 唔 好 走开
 你 问 我 个 日 中午 去 左边 度
 我话 乜 你 甘鬼 八 你 想 剃 我 撇须
 我 本人 钟意 去 边度 就 去 边度
 你 试下 再 问 我 我 就 发起 牢骚
 你 一日 八过 一日 你 一朝 懵过 一朝
 我 叫 左 你 去 学 比较 有用 的 既野
 你 就 日日 坐系 REGENT 由 天光 八到 夜
 一于 努力 一于 努力 换个 对象
 一于 记住 一于 记住 创新 方向
 一于 努力 一于 努力 留下 印象
 一于 记住 一于 记住 每天 向前 望
 一讲 你 自己 就 烂 甘 神秘
 问多 你 两问 你 就 指天 笃 地
 你 最怕 被 人 知道 你 去 边度 飞
 我服 你 真系 服到 你 就 五体投地
 我 唔 系怕 一万只 系怕 万一
 我 跟 左 你 甘耐 只系 得 番 一个 吉
 我 讲 左甘鬼 耐 你 知 唔 知 我 UP 过 乜
 我 甘系 话 你 丑样 只系 话 你 核突
 一于 努力 一于 努力 换个 对象
 一于 记住 一于 记住 创新 方向
 一于 努力 一于 努力 留下 印象
 一于 记住 一于 记住 每天 向前 望
 寻晚 你 又 知 唔 知道 我 去 左边 度
 我 一个 傻佬 自己 走 去 红 勘 睇 SHOW
 坐系 我 隔离 系 一个 单身 美女
 到 我 同 巨讲 多句 就 知道 有路
 我 DATE 左巨 几日 就 觉得 巨 老土
 虐待 我 十足 好似 报仇 甘报
 我 多谢 天主 上帝 令 我 而家 知道
 世上 几千万 人 都 系 你 最好
 一于 努力 一于 努力 全部 照旧
 一于 记住 一于 记住 无谓 分手
 一于 努力 一于 努力 永不 退后
 一于 记住 一于 记住 再 不 争斗
 一于 努力 一于 努力 全部 照旧
 一于 记住 一于 记住 无谓 分手
 一于 努力 一于 努力 永不 退后
 一于 记住 一于 记住 再 不 争斗
 一于 努力 一于 努力 全部 照旧
 一于 记住 一于 记住 无谓 分手
 一于 努力 一于 努力 永不 退后
 一于 记住 一于 记住 再 不 争斗
 一于 努力 一于 努力 全部 照旧


------------------------------------------------------------------------------

Ingrese EOF para salir

Escriba EOF:
Windows: Ctrl + Z
Linux: Ctrl + D
Inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/COFACTOR/article/details/108903277
Recomendado
Clasificación