Python 實驗課 jieba和def

2021-10-12 17:56:21 字數 3564 閱讀 4319

import jieba

import jieba.posseg as psg

f =open

('李白的詩.txt'

,'r'

,encoding=

'utf-8'

)lbpoetry=f.read(

)f.close(

)lst_poetry_word=psg.lcut(lbpoetry)

dic_one_noun=

dic_two_noun=

for x in lst_poetry_word:

iflen

(x.word)==1

and x.flag==

'n':

dic_one_noun[x.word]

=dic_one_noun.get(x.word,0)

+1iflen

(x.word)==2

and x.flag==

'n':

dic_two_noun[x.word]

=dic_two_noun.get(x.word,0)

+1result_one_noun=

sorted

(dic_one_noun.items(

),key=

lambda x:x[1]

,reverse=

true

)result_one_noun=

[x[0]+

str(x[1]

)+'\n'

for x in result_one_noun[:10

]]result_two_noun=

sorted

(dic_two_noun.items(

),key=

lambda x:x[1]

,reverse=

true

)result_two_noun=

[x[0]+

str(x[1]

)+'\n'

for x in result_two_noun[:10

]]f=open

('李白高頻詞.txt'

,'w'

,encoding=

'utf-8'

)f.writelines(result_one_noun)

f.writelines(result_two_noun)

f.close(

)

import jieba

s='外觀很好,畫質也不錯,但是音質真的太糟糕了!操作也不方便。'

positive_lst=

['好'

,'不錯'

,'方便'

,'贊'

]negtive_lst=

['糟糕'

,'爛'

]degree_dict=

lst=jieba.lcut(s)

positive_words=

0negtive_words=

0print

(lst)

for i in

range

(len

(lst)):

if lst[i]

in positive_lst:

if lst[i-1]

!='不'

: positive_words+=

1*degree_dict.get(lst[i-1]

,1)else

: negtive_words+=-1

*degree_dict.get(lst[i-1]

,1)elif lst[i]

in negtive_lst:

if lst[i-1]

!='不'

: negtive_words+=-1

*degree_dict.get(lst[i-1]

,1)else

: positive_words+=

1*degree_dict.get(lst[i-1]

,1)total=positive_words+negtive_words

result=

'積極情感'

if total>=

0else

'消極情感'

print

('情感分為:{}分,情感分析結果為:{}'

.format

(total,result)

)

####請在以下空白處定義函式

deff

(n):

lst=

for i in

range(1

,n+1):

if i%

11==0or

('9'

instr

(i))

:return lst

####請在以上空白處定義函式

a=int

(input()

)gifts=f(a)

print

("禮物份數:"

,len

(gifts)

)print

("應發放禮物的序號:"

,end=

' ')

for i in gifts:

print

(i,end=

' ')

####請在以下空白處定義函式

defislucky

(s,digit)

:if s[-2

:-1]

==digit:

count=s.count(digit)

score=count/

len(s)

*1.2

else

: count=s.count(digit)

score=count/

len(s)*1

if score>=

0.6:

return

true

else

:return

false

####請在以上空白處定義函式

s, digit =

input()

.split(

)if islucky(s, digit)

:print

('lucky!'

)else

:print

('so so.'

)

m=

input()

count=

0while count<=20:

m=str(

int(m)

+int

(m[-1:

:-1]

))count+=

1if m==m[-1

::-1

]:print

(count)

break

else

:print

(">20"

)

NLP基礎實驗 中文分詞 jieba

中文分詞有很多種,常見的比如有中科院計算所 nlpir 哈工大 ltp 清華大學 thulac 斯坦福分詞器 hanlp 分詞器 jieba 分詞 ikanalyzer 等。官方 三種分詞演算法 支援三種分詞模式 import jieba content 現如今,機器學習和深度學習帶動人工智慧飛速的...

Python學習 jieba分詞庫和time模組

專案需要用到分詞,所以找了一天合適的分詞庫,網上推薦最多的是jieba分詞,在linux環境下安裝很方便,輸入命令 pip install jieba 即可。使用更為方便 import jieba data 這是乙個讓人增長見識的專案 seg list jieba.cut data,cut all ...

演算法實驗課

ps 開玩笑的,請隨意 1.格雷碼構造問題 分治法 分治法 the sample input 4the sample output 1111 0111 0011 1011 1001 0001 0101 1101 1100 0100 0000 1000 1010 0010 0110 1110 incl...