Python123第六周(例項)

2021-10-05 07:29:18 字數 2369 閱讀 5338

1,求解基本統計值

#calstistics.py

defgetnum()

:#獲取多個輸入值

nums =

inumstr =

input

("請輸入數字(回車退出):"

)while inumstr !="":

eval

(inumstr)

) inumstr =

input

("請輸入數字(回車退出):"

)#此處無法忽略,否則輸入無法跳出

return nums

defmean

(numbers)

:#求解平均值

s =0.0for num in numbers:

s = s + num

return s /

len(numbers)

defdev

(numbers,mean)

:#求解方差

sdev =

0.0for num in numbers:

sdev = sdev +

(num - mean)**2

return

pow(sdev/

len(numbers)

,0.5

)def

median

(numbers)

:#求解中位數

sorted

(numbers)

size =

len(numbers)

if size %2==

0:med =

(numbers[size//2-

1]+ numbers[size//2]

)/2else

: med = numbers[size//2]

return med #之前忘記了返回值,導致輸出為none

n = getnum(

)m = mean(n)

print

("平均值:{},方差:{},中位數:{}."

.format

(m,dev(n,m)

,median(n)

))

2, jieba庫的安裝與使用指令

在cmd命令列中輸入

pip install jieba

若報錯存在延時,也可輸入

pip -

-default-timeout=

100 install -u jieba

若仍然報錯,則需要手動安裝

#files

(2)cmd進入jieba的檔案python setup.py install

jieba的常用函式

3,文字詞頻分析

# #dpcq.txt

import jieba

excludes =

txt =

open

("dpcq.txt"

,"r"

,encoding=

"ansi"

).read(

)words = jieba.lcut(txt)

#切分文章

counts =

#建立字典型別

for word in words:

iflen

(word)==1

:continue

#可以新增elif

else

: rword = word

counts[rword]

= counts.get(rword,0)

+1for word in excludes:

del counts[word]

items =

list

(counts.items())

items.sort(key=

lambda x:x[1]

,reverse=

true

)for i in

range(30

):word, count = items[i]

print(""

.format

(word,count)

)

吐槽:鬥破蒼穹詞彙實在是太貧瘠了

Python123第六周程式設計題詳解

1,數字不同數之和 法1 number input s set number 輸入變為集合,達到資料去重的目的 sum 0ls list s 資料變為列表型別,便於索引 for i in range len ls sum sum eval ls i print sum 法2 number input...

python123第六周 第六周 組合資料型別

6.1組合型別及操作 1.集合型別的定義 集合是多個元素的無序組合 集合型別與數學中的集合概念一致 集合元素之間無序,每個元素唯一,不存在相同元素 集合元素不可更改,不能是可變資料型別 集合用大括號 表示,元素間用逗號分隔 建立集合型別用 或 set 建立空集合型別,必須使用set 2.集合操作符 ...

第六周周總結

這一周,不管是生活上的還是學習上的,亦或是工作上的,都異常的忙碌,忙碌到心態會有些崩潰的地步,可能是性格原因,不願意說放棄就放棄,所以還是希望可以完成自己該做的,想做的事情。堅持不是一件容易的事情,可怕的是你都不知道自己的堅持到底對不對,不管正確與否,我都選擇,做下去。像長跑,原以為自己肯定跑不動,...