當前位置:首頁 » 編程語言 » python3結巴

python3結巴

發布時間: 2022-08-09 16:16:32

Ⅰ 在python 環境下,使用結巴分詞,自動導入文本,分詞,提取關鍵詞.腳本 大俠給個

#-*-coding:UTF-8-*-

importjieba

__author__='lpe234'


seg_list=jieba.cut("我來到北京天安門",cut_all=True)
print','.join(seg_list)
...
Loadingmodelfromcache/var/folders/sv//T/jieba.cache
我,來到,北京,天安,天安門
Loadingmodelcost0.433seconds.
.

Processfinishedwithexitcode0

Ⅱ python問題

#python3
importre
importsys
a='''我是中國人
巴林公主將於今日舉行婚禮'''
b='''我
我是
是中國人
中國人
我是中國

巴林
公主


今日
舉行
婚禮
舉行婚禮'''
b=b.splitlines()
defsolve(a=a,b=b,file=sys.stdout):
def_f(s,start,temp=[]):
forpinb:
ifs[start:].startswith(p):
temp.append(p)
end=start+len(p)+1
ifend>=len(s):
file.write(str(temp)+' ')
temp.pop()
return
else:
_f(s,end,temp)
temp.pop()
forsina.splitlines():
_f(s,0)
>>>solve()
['我','是中國人']
['我是','中國人']
['我是中國','人']
['巴林','公主','將','於','今日','舉行','婚禮']
['巴林','公主','將','於','今日','舉行婚禮']

Ⅲ 怎麼是用python 語言 使用結巴分詞 呢

Python代碼

#encoding=utf-8
importjieba

seg_list=jieba.cut("我來到北京清華大學",cut_all=True)
print"FullMode:","/".join(seg_list)#全模式

seg_list=jieba.cut("我來到北京清華大學",cut_all=False)
print"DefaultMode:","/".join(seg_list)#默認模式

seg_list=jieba.cut("他來到了網易杭研大廈")
print",".join(seg_list)

輸出:

FullMode:我/來/來到/到/北/北京/京/清/清華/清華大學/華/華大/大/大學/學

DefaultMode:我/來到/北京/清華大學

他,來到,了,網易,杭研,大廈(此處,「杭研」並沒有在詞典中,但是也被Viterbi演算法識別出來了)

Ⅳ 一個txt文檔,已經用結巴分詞分完詞,怎麼用python工具對這個分完詞的文檔進行計算統計詞頻,求腳本,非

#!/usr/bin/envpython3
#-*-coding:utf-8-*-

importos,random

#假設要讀取文件名為aa,位於當前路徑
filename='aa.txt'
dirname=os.getcwd()
f_n=os.path.join(dirname,filename)
#注釋掉的程序段,用於測試腳本,它生成20行數據,每行有1-20隨機個數字,每個數字隨機1-20
'''
test=''
foriinrange(20):
forjinrange(random.randint(1,20)):
test+=str(random.randint(1,20))+''
test+=' '
withopen(f_n,'w')aswf:
wf.write(test)
'''
withopen(f_n)asf:
s=f.readlines()

#將每一行數據去掉首尾的空格和換行符,然後用空格分割,再組成一維列表
words=[]
forlineins:
words.extend(line.strip().split(''))

#格式化要輸出的每行數據,首尾各佔8位,中間佔18位
defgeshi(a,b,c):
returnalignment(str(a))+alignment(str(b),18)+alignment(str(c))+' '
#中英文混合對齊,參考http://bbs.fishc.com/thread-67465-1-1.html,二樓
#漢字與字母格式化佔位format對齊出錯對不齊漢字對齊數字漢字對齊字母中文對齊英文
#alignment函數用於英漢混合對齊、漢字英文對齊、漢英對齊、中英對齊
defalignment(str1,space=8,align='left'):
length=len(str1.encode('gb2312'))
space=space-lengthifspace>=lengthelse0
ifalignin['left','l','L','Left','LEFT']:
str1=str1+''*space
elifalignin['right','r','R','Right','RIGHT']:
str1=''*space+str1
elifalignin['center','c','C','Center','CENTER','centre']:
str1=''*(space//2)+str1+''*(space-space//2)
returnstr1

w_s=geshi('序號','詞','頻率')
#由(詞,頻率)元組構成列表,先按頻率降序排序,再按詞升序排序,多級排序,一組升,一組降,高級sorted
wordcount=sorted([(w,words.count(w))forwinset(words)],key=lambdal:(-l[1],l[0]))
#要輸出的數據,每一行由:序號(佔8位)詞(佔20位)頻率(佔8位)+' '構成,序號=List.index(element)+1
for(w,c)inwordcount:
w_s+=geshi(wordcount.index((w,c))+1,w,c)
#將統計結果寫入文件ar.txt中
writefile='ar.txt'
w_n=os.path.join(dirname,writefile)
withopen(w_n,'w')aswf:
wf.write(w_s)

Ⅳ python中怎樣處理漢語的同義詞用結巴分詞

python中文分詞:結巴分詞
中文分詞是中文文本處理的一個基礎性工作,結巴分詞利用進行中文分詞。其基本實現原理有三點:
基於Trie樹結構實現高效的詞圖掃描,生成句子中漢字所有可能成詞情況所構成的有向無環圖(DAG)
採用了動態規劃查找最大概率路徑, 找出基於詞頻的最大切分組合
對於未登錄詞,採用了基於漢字成詞能力的HMM模型,使用了Viterbi演算法
安裝(Linux環境)
下載工具包,解壓後進入目錄下,運行:python setup.py install

模式
默認模式,試圖將句子最精確地切開,適合文本分析
全模式,把句子中所有的可以成詞的詞語都掃描出來,適合搜索引擎

介面
組件只提供jieba.cut 方法用於分詞
cut方法接受兩個輸入參數:
第一個參數為需要分詞的字元串
cut_all參數用來控制分詞模式
待分詞的字元串可以是gbk字元串、utf-8字元串或者unicode
jieba.cut返回的結構是一個可迭代的generator,可以使用for循環來獲得分詞後得到的每一個詞語(unicode),也可以用list(jieba.cut(...))轉化為list

實例

#! -*- coding:utf-8 -*-
import jieba
seg_list = jieba.cut("我來到北京清華大學", cut_all = True)
print "Full Mode:", ' '.join(seg_list)

seg_list = jieba.cut("我來到北京清華大學")
print "Default Mode:", ' '.join(seg_list)

Ⅵ python3 進行結巴分詞時可以並行處理嗎

下面這個程序是對一個文本文件里的內容進行分詞的程序:test.py
[python] view plain
#!/usr/bin/python
#-*- encoding:utf-8 -*-
import jieba #導入jieba模塊

def splitSentence(inputFile, outputFile):
fin = open(inputFile, 'r') #以讀的方式打開文件
fout = open(outputFile, 'w') #以寫得方式打開文件

for eachLine in fin:
line = eachLine.strip().decode('utf-8', 'ignore') #去除每行首尾可能出現的空格,並轉為Unicode進行處理
wordList = list(jieba.cut(line)) #用結巴分詞,對每行內容進行分詞
outStr = ''
for word in wordList:
outStr += word
outStr += '/ '
fout.write(outStr.strip().encode('utf-8') + '\n') #將分詞好的結果寫入到輸出文件
fin.close()
fout.close()

splitSentence('myInput.txt', 'myOutput.txt')
寫完程序之後,在Linux重點輸入:python test.py即可運行程序進行分詞。

Ⅶ 請問python的結巴jieba為什麼提示:MoleNotFoundError: No mole named 'jieba'

朋友,你電腦裡面有好幾個版本的python了,你安裝jieba的版本是3.6.4,
你打開的idle是3.6.5,所以這個版本找不到jieba的路徑咯。

Ⅷ 怎麼給python安裝結巴分詞

pip安裝
下載包後放到python的目錄下
大約記得是Lib/sxxxx-txxxx/這

Ⅸ 我Python3.8.0自帶的IDLE中可以使用jieba,為什麼Pycharm不行

這種找不到包的情況,基本都是環境問題
就是你安裝結巴分詞的Python環境,跟你pycharm中建項目的環境不是同一個,你可以看看設置,pycharm里的解釋器用的是哪個,估計是虛擬的新環境,虛擬環境的py基本沒有第三方庫,
你要做的是把解釋器路徑指向你裝包的那個

Ⅹ python3怎麼使用結巴分詞

下面這個程序是對一個文本文件里的內容進行分詞的程序:test.py

[python] view plain

#!/usr/bin/python

#-*-encoding:utf-8-*-

importjieba#導入jieba模塊

defsplitSentence(inputFile,outputFile):

fin=open(inputFile,'r')#以讀的方式打開文件

fout=open(outputFile,'w')#以寫得方式打開文件

foreachLineinfin:

line=eachLine.strip().decode('utf-8','ignore')#去除每行首尾可能出現的空格,並轉為Unicode進行處理

wordList=list(jieba.cut(line))#用結巴分詞,對每行內容進行分詞

outStr=''

forwordinwordList:

outStr+=word

outStr+='/'

fout.write(outStr.strip().encode('utf-8')+' ')#將分詞好的結果寫入到輸出文件

fin.close()

fout.close()

splitSentence('myInput.txt','myOutput.txt')

寫完程序之後,在Linux重點輸入:python test.py即可運行程序進行分詞。


輸入的文件內容如下所示:

注意:第11行的 jieba.cut()返回的結構是一個可迭代的generator,可以用list(jieba.cut(...))轉化為list

熱點內容
資料庫網格計算 發布:2024-04-16 23:28:13 瀏覽:21
電波蘿莉醬解壓 發布:2024-04-16 23:26:59 瀏覽:546
平板訪問密碼是什麼時候設置的 發布:2024-04-16 23:15:52 瀏覽:177
pyinstaller如何自定義配置打包 發布:2024-04-16 22:51:54 瀏覽:199
怎麼設置建行登陸密碼 發布:2024-04-16 22:49:58 瀏覽:58
大型激光編程 發布:2024-04-16 22:41:04 瀏覽:535
手機解壓不了游戲 發布:2024-04-16 22:25:04 瀏覽:149
職場簡單編程 發布:2024-04-16 21:58:30 瀏覽:498
零食劇情腳本 發布:2024-04-16 20:59:56 瀏覽:82
我的世界粘土伺服器戰牆 發布:2024-04-16 20:55:31 瀏覽:683