當前位置:首頁 » 編程語言 » python編程100例

python編程100例

發布時間: 2023-06-27 08:34:32

python 怎麼取列表中最小的數

求一個列表中的最小值,可以用min函數。例如:
li = [100,300,200,500,56,23,89]
print("列表中的最小值是:",min(li))

② 我用了100行Python代碼,實現了與女神尬聊微信(附代碼)

朋友圈很多人都想學python,有一個很重要的原因是它非常適合入門。對於 人工智慧演算法 的開發,python有其他編程語言所沒有的獨特優勢, 代碼量少 ,開發者只需把精力集中在演算法研究上面。

本文介紹一個用python開發的,自動與美女尬聊的小軟體。以下都是滿滿的干貨,是我工作之餘時寫的,經過不斷優化,現在分享給大家。那現在就讓我們抓緊時間開始吧!


准備:

編程工具IDE:pycharm

python版本: 3.6.0

首先新建一個py文件,命名為:ai_chat.py

PS: 以下五步的代碼直接復制到單個py文件裡面就可以直接運行。為了讓讀者方便寫代碼,我把代碼都貼出來了,但是排版存在問題,我又把在pycharm的代碼排版給截圖出來。


第一步: 引入關鍵包

簡單介紹一下上面幾個包的作用: pickle 包 是用來對數據序列化存文件、反序列化讀取文件,是人類不可讀的,但是計算機去讀取時速度超快。(就是用記事本打開是亂碼)。 而 json包 是一種文本序列化,是人類可讀的,方便你對其進行修改(記事本打開,可以看到裡面所有內容,而且都認識。) gensim 包 是自然語言處理的其中一個python包,簡單容易使用,是入門NLP演算法必用的一個python包。 jieba包 是用來分詞,對於演算法大咖來說效果一般般,但是它的速度非常快,適合入門使用。


以上這些包,不是關鍵,學習的時候,可以先跳過。等理解整個程序流程後,可以一個一個包有針對性地去看文檔。


第二步:靜態配置

這里path指的是對話語料(訓練數據)存放的位置,model_path是模型存儲的路徑。

這里是個人編程的習慣,我習慣把一些配置,例如:文件路徑、模型存放路徑、模型參數統一放在一個類中。當然,實際項目開發的時候,是用config 文件存放,不會直接寫在代碼里,這里為了演示方便,就寫在一起,也方便運行。

第三步: 編寫一個類,實現導數據、模型訓練、對話預測一體化

首次運行的時候,會從靜態配置中讀取訓練數據的路徑,讀取數據,進行訓練,並把訓練好的模型存儲到指定的模型路徑。後續運行,是直接導入模型,就不用再次訓練了。

對於model類,我們一個一個來介紹。

initialize() 函數和 __init__() 函數 是對象初始化和實例化,其中包括基本參數的賦值、模型的導入、模型的訓練、模型的保存、最後返回用戶一個對象。


__train_model() 函數,對問題進行分詞,使用 gesim 實現詞袋模型,統計每個特徵的 tf-idf , 建立稀疏矩陣,進而建立索引。

__save_model() 函數 和 __load_model() 函數 是成對出現的,很多項目都會有這兩個函數,用於保存模型和導入模型。不同的是,本項目用的是文件存儲的方式,實際上線用的是資料庫

get_answer() 函數使用訓練好的模型,對問題進行分析,最終把預測的回答內容反饋給用戶。


第四步:寫三個工具類型的函數,作為讀寫文件。

其中,獲取對話材料,可以自主修改對話內容,作為機器的訓練的數據。我這里只是給了幾個簡單的對話語料,實際上線的項目,需要大量的語料來訓練,這樣對話內容才飽滿。


這三個工具函數,相對比較簡單一些。其中 get_data() 函數,裡面的數據是我自己編的,大家可以根據自己的習慣,添加自己的對話數據,這樣最終訓練的模型,對話方式會更貼近自己的說話方式。


第五步: 調用模型,進行對話預測

主函數main(), 就是你整個程序運行的起點,它控制著所有步驟。


運行結果:


程序後台運行結果:


如果有疑問想獲取源碼 其實代碼都在上面 ),可以後台私信我,回復:python智能對話。 我把源碼發你。最後,感謝大家的閱讀,祝大家工作生活愉快!

③ python中如何編程求1到100之間的素數

#!/usr/bin/python

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

#求素數

list=[]

i=2

for i in range (2,100):

j=2

for j in range(2,i):

if(i%j==0):

break

else:

list.append(i)

print(list)

(3)python編程100例擴展閱讀:

python:for語句的使用方法

for循環的語法格式:

for i in range(n):#從數據類型中拿一個值賦值給i

print(i)#列印i

例如:

#for

for i in range (1,6,2):#從一開始到六之前每隔上2個數字

print(i)#結果為1,3,5

# ------------------------------------------------

s = ["man", "woman", "girl", "boy", "sister"]

for i in s:#列表s中的每個元素給i

print(i)

#-------------------------------------------------

for i in range(5):

print(i)#結果為:0,1,2,3,4

for循環實例:數字0,1,2組成一個百位數,並且數字不重復!

#for

for i in range(0,3):

for j in range(0,3):

for k in range(0,3):

if (i != 0) and (i != j) and (i != k) and (j != k):

print (i,j,k)

④ python中如何編程求1到100之間的素數

1、新建python文件,testprimenum.py;

熱點內容
安卓如何下載lv手游 發布:2025-05-14 10:35:45 瀏覽:383
pythondict添加key 發布:2025-05-14 10:33:59 瀏覽:381
柱子箍筋加密區長度 發布:2025-05-14 10:18:29 瀏覽:352
雲伺服器和內網穿透哪個好 發布:2025-05-14 10:16:41 瀏覽:627
安徽新能源網路配置是什麼 發布:2025-05-14 10:06:24 瀏覽:631
pinode搭建伺服器 發布:2025-05-14 10:04:23 瀏覽:4
電腦伺服器ip名稱 發布:2025-05-14 10:01:09 瀏覽:749
connectorpython 發布:2025-05-14 09:48:50 瀏覽:763
配置不好怎麼辦 發布:2025-05-14 09:46:40 瀏覽:623
數據流程圖中的數據存儲是指 發布:2025-05-14 09:46:39 瀏覽:446