最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

一文教你如何使用python編寫(xiě)交互式.exe程序

 更新時(shí)間:2025年07月18日 08:39:49   作者:xinyi  
這篇文章主要為大家詳細(xì)介紹了如何使用python編寫(xiě)實(shí)現(xiàn)一個(gè)交互式.exe程序,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,有需要的小伙伴可以了解下

這個(gè)程序用到的是python上matplotlib模塊。

Matplotlib是一個(gè)用于繪制數(shù)據(jù)可視化圖表的Python庫(kù)。它可以創(chuàng)建各種類型的圖表,包括折線圖、散點(diǎn)圖、柱狀圖、餅圖、等高線圖等。Matplotlib具有廣泛的功能和靈活性,可以滿足各種繪圖需求。

以下是Matplotlib的一些主要特點(diǎn):

  • 靈活性:Matplotlib支持多種繪圖風(fēng)格,可以創(chuàng)建各種類型的圖表,并允許用戶自定義每個(gè)元素的外觀和屬性。
  • 易于使用:Matplotlib具有簡(jiǎn)單易懂的API,使得用戶可以輕松地創(chuàng)建和定制圖表。
  • 交互式繪圖:Matplotlib支持交互式繪圖,用戶可以通過(guò)縮放、平移和旋轉(zhuǎn)等操作來(lái)探索數(shù)據(jù)。
  • 多平臺(tái)支持:Matplotlib可以在多個(gè)操作系統(tǒng)上運(yùn)行,并且可以與許多GUI工具包(如Tkinter、wxPython和Qt)集成。

Matplotlib主要由以下幾個(gè)模塊組成:

  • pyplot:這是Matplotlib的主要模塊,它提供了類似于MATLAB的界面,使得用戶可以輕松地創(chuàng)建和定制圖表。
  • pylab:這是一個(gè)便利的模塊,它將pyplot和NumPy等庫(kù)組合在一起,并提供了一些額外的功能。
  • artist:這是Matplotlib中所有可見(jiàn)元素(如圖形、軸、文本等)的基類。
  • backend:這是Matplotlib的后端模塊,它負(fù)責(zé)將圖形渲染到屏幕或文件中。

下面開(kāi)始去如何用pycharm實(shí)現(xiàn)這個(gè)可執(zhí)行程序。

首先下載一個(gè)pycharm程序

安裝后,左上角文件-新建項(xiàng)目

默認(rèn)設(shè)置即可。

右鍵點(diǎn)擊該工程,新建一個(gè)python文件,需要在這個(gè)文件里導(dǎo)入模塊,這里用到的模塊就是Matplotlib numpy,看最下面,選終端。

需要在終端內(nèi)用命令:pip install matplotlib numpy

安裝完畢,就可以在python文件寫(xiě)代碼了

下面是這個(gè)程序源碼:(函數(shù)和功能已注釋了,復(fù)制進(jìn)去就可以)

import time
import numpy as np
import matplotlib.pyplot as plt
#寫(xiě)入文字需要存在漢字包的字體文件
plt.rcParams['font.family'] = 'Arial Unicode MS'
def tellme(s):
    print(s)
    plt.title(s, fontsize=16)
    plt.draw()
plt.figure()
plt.xlim(0, 1)#坐標(biāo)系x顯示限制
plt.ylim(0, 1)#坐標(biāo)系y顯示限制
tellme('你將定義一個(gè)三角形,點(diǎn)擊開(kāi)始')
#waitforbuttonpress 偵聽(tīng)按鍵函數(shù)
plt.waitforbuttonpress()
while True:
    pts = []
    while len(pts) < 3:
        tellme('用鼠標(biāo)選擇3個(gè)角')
        pts = np.asarray(plt.ginput(3, timeout=-1))#np.asarray 用于將輸入轉(zhuǎn)換為數(shù)組的函數(shù)
        if len(pts) < 3:
            tellme('點(diǎn)太少,重新開(kāi)始')
            time.sleep(1)  # 等1秒
    ph = plt.fill(pts[:, 0], pts[:, 1], 'r', lw=2)
    tellme('成功了嗎?鍵盤(pán)點(diǎn)擊表示是,鼠標(biāo)點(diǎn)擊表示不是')
    if plt.waitforbuttonpress():<code>
        break
    # 擺脫填充
    for p in ph:
        p.remove()
# 定義一個(gè)與各個(gè)點(diǎn)的距離的函數(shù)
def f(x, y, pts):
    z = np.zeros_like(x)
    for p in pts:
        z = z + 1/(np.sqrt((x - p[0])**2 + (y - p[1])**2))
    return 1/z
#np.meshgrid 用于生成網(wǎng)格點(diǎn)坐標(biāo)矩陣的函數(shù),通常用于在二維或三維空間中繪制函數(shù)圖像或進(jìn)行插值運(yùn)算
X, Y = np.meshgrid(np.linspace(-1, 1, 51), np.linspace(-1, 1, 51))
Z = f(X, Y, pts)
CS = plt.contour(X, Y, Z, 20)
tellme('用鼠標(biāo)選擇等高線標(biāo)簽位置,中鍵完成')
CL = plt.clabel(CS, manual=True)
tellme('現(xiàn)在做一個(gè)嵌套縮放,點(diǎn)擊開(kāi)始')
plt.waitforbuttonpress()
while True:
    tellme('選擇縮放的兩個(gè)角,鼠標(biāo)中鍵完成')
    pts = plt.ginput(2, timeout=-1)
    if len(pts) < 2:
        break
    (x0, y0), (x1, y1) = pts
    xmin, xmax = sorted([x0, x1])
    ymin, ymax = sorted([y0, y1])
    plt.xlim(xmin, xmax)
    plt.ylim(ymin, ymax)
tellme('完成!')
plt.show()

我們?cè)趐ycharm環(huán)境中測(cè)試一下(ctrl+shift+F10,測(cè)試當(dāng)前代碼執(zhí)行)

運(yùn)行沒(méi)啥問(wèn)題,選3個(gè)角,生成等高線

選擇縮放兩個(gè)角,按鼠標(biāo)中鍵完成

用pyinstaller封裝py代碼,生成可執(zhí)行文件。

先在終端里pip install pyinstaller

在windows的cmd找到pyinstaller執(zhí)行寫(xiě)的代碼,在其目錄會(huì)生成dist文件夾,里面就是windows的可執(zhí)行文件

如果在運(yùn)行 pyinstaller 命令時(shí)出現(xiàn) 'pyinstaller' 不是內(nèi)部或外部命令 的錯(cuò)誤,可能是因?yàn)?nbsp;pyinstaller 沒(méi)有正確安裝或者沒(méi)有添加到系統(tǒng)環(huán)境變量中。

可以嘗試以下解決方法:

  • 如果尚未安裝 pyinstaller,請(qǐng)?jiān)诿钐崾痉休斎胍韵旅顏?lái)安裝:復(fù)制pip install pyinstaller(其實(shí)已經(jīng)在上面裝了,只是不在環(huán)境變量里)
  • 如果已經(jīng)安裝了 pyinstaller,請(qǐng)檢查是否將其添加到了系統(tǒng)環(huán)境變量中。可以按照以下步驟進(jìn)行操作:
    • 右鍵單擊“此電腦”并選擇“屬性”。
    • 選擇“高級(jí)系統(tǒng)設(shè)置”。
    • 在“高級(jí)”選項(xiàng)卡下,單擊“環(huán)境變量”。
    • 在“系統(tǒng)變量”下找到“Path”,并單擊“編輯”。
    • 在彈出的對(duì)話框中,單擊“新建”,并輸入 C:\PythonXX\Scripts(其中 XX 是您的Python版本號(hào))。
    • 單擊“確定”保存更改。
  • 如何還不行,直接cd到該工程的目錄下\venv\scripts\剛才裝的installer在這里面,如下圖所示

好了看一下dist的文件吧,

到這一步你就用有自己的第一個(gè).exe程序了,大功告成!

到此這篇關(guān)于一文教你如何使用python編寫(xiě)交互式.exe程序的文章就介紹到這了,更多相關(guān)python交互式程序內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python pygame實(shí)現(xiàn)擋板彈球游戲

    python pygame實(shí)現(xiàn)擋板彈球游戲

    這篇文章主要為大家詳細(xì)介紹了python pygame實(shí)現(xiàn)擋板彈球游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • 使用python實(shí)現(xiàn)滑動(dòng)驗(yàn)證碼功能

    使用python實(shí)現(xiàn)滑動(dòng)驗(yàn)證碼功能

    這篇文章主要介紹了使用python實(shí)現(xiàn)滑動(dòng)驗(yàn)證碼功能,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下
    2019-08-08
  • 使用python PIL庫(kù)實(shí)現(xiàn)簡(jiǎn)單驗(yàn)證碼的去噪方法步驟

    使用python PIL庫(kù)實(shí)現(xiàn)簡(jiǎn)單驗(yàn)證碼的去噪方法步驟

    這篇文章主要介紹了使用python PIL庫(kù)實(shí)現(xiàn)簡(jiǎn)單驗(yàn)證碼的去噪方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • 解決多個(gè)@Scheduled定時(shí)任務(wù)執(zhí)行時(shí)個(gè)別不執(zhí)行問(wèn)題

    解決多個(gè)@Scheduled定時(shí)任務(wù)執(zhí)行時(shí)個(gè)別不執(zhí)行問(wèn)題

    這篇文章主要介紹了解決多個(gè)@Scheduled定時(shí)任務(wù)執(zhí)行時(shí)個(gè)別不執(zhí)行問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • 在Lighttpd服務(wù)器中運(yùn)行Django應(yīng)用的方法

    在Lighttpd服務(wù)器中運(yùn)行Django應(yīng)用的方法

    這篇文章主要介紹了在Lighttpd服務(wù)器中運(yùn)行Django應(yīng)用的方法,本文所采用的是最流行的FastCGI模塊,包括同時(shí)運(yùn)行多個(gè)Django應(yīng)用的方法,需要的朋友可以參考下
    2015-07-07
  • 使用Python在PDF中設(shè)置圖片透明度的操作方法

    使用Python在PDF中設(shè)置圖片透明度的操作方法

    在 PDF 文檔編輯中,適當(dāng)?shù)卣{(diào)整圖片的透明度,可以幫助實(shí)現(xiàn)更平衡的版面效果,使內(nèi)容層次更清晰、視覺(jué)更協(xié)調(diào),助 Free Spire.PDF for Python,我們可以通過(guò)簡(jiǎn)單的 Python 代碼靈活設(shè)置圖片的透明度,而無(wú)需借助復(fù)雜的圖像編輯軟件,需要的朋友可以參考下
    2025-11-11
  • 在Linux下使用Python的matplotlib繪制數(shù)據(jù)圖的教程

    在Linux下使用Python的matplotlib繪制數(shù)據(jù)圖的教程

    這篇文章主要介紹了在Linux下使用Python的matplotlib繪制數(shù)據(jù)圖的教程,matplotlib基于Numpy進(jìn)行科學(xué)計(jì)算上的延伸,需要的朋友可以參考下
    2015-06-06
  • Python讀取文件內(nèi)容為字符串的方法(多種方法詳解)

    Python讀取文件內(nèi)容為字符串的方法(多種方法詳解)

    這篇文章主要介紹了Python讀取文件內(nèi)容為字符串的方法,本文通過(guò)三種方式給大家介紹,在文章末尾給大家提到了python讀取txt文件中字符串,字符串用空格分隔的相關(guān)知識(shí),需要的朋友可以參考下
    2020-03-03
  • Python3+PyInstall+Sciter解決報(bào)錯(cuò)缺少dll、html等文件問(wèn)題

    Python3+PyInstall+Sciter解決報(bào)錯(cuò)缺少dll、html等文件問(wèn)題

    這篇文章主要介紹了Python3+PyInstall+Sciter解決報(bào)錯(cuò)缺少dll、html等文件問(wèn)題,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-07-07
  • Python中zip()函數(shù)的使用方法詳解

    Python中zip()函數(shù)的使用方法詳解

    在Python中,zip()函數(shù)是一個(gè)非常實(shí)用且強(qiáng)大的內(nèi)置函數(shù),它主要用于將多個(gè)迭代器(如列表、元組、字符串等)中的元素“打包”成一個(gè)個(gè)元組,并返回一個(gè)迭代器,下面,我將詳細(xì)探討zip()函數(shù)的使用方法,需要的朋友可以參考下
    2024-09-09

最新評(píng)論

苗栗市| 中牟县| 昭平县| 上犹县| 达孜县| 连江县| 迁安市| 安多县| 宁河县| 高雄县| 清水河县| 错那县| 清新县| 白玉县| 将乐县| 内江市| 延边| 宁南县| 荣昌县| 洞口县| 泾源县| 长岭县| 麻栗坡县| 曲周县| 东方市| 扶绥县| 洛宁县| 松潘县| 花莲市| 昌宁县| 渝中区| 吉木萨尔县| 安乡县| 甘肃省| 罗田县| 惠安县| 黑水县| 沙湾县| 崇州市| 壤塘县| 呼图壁县|