來學Python啦,Pyinstaller庫及科赫雪花小包裹問題分析

2021-02-23 程式設計師Bob

請在足跡所至之處,讓感恩之情如火種般灑下;它們會燃起友情的火焰,以溫暖回報你。

——《人性的弱點》

相信大家平時在手機或者在電腦上看到最多的是可執行文件,那麼我們平時寫的代碼是如何變成可執行文件呢?想看冬天的雪麼,那麼來和小編一起手寫一個叭~


簡述:第三方庫,將py源碼轉換成無需源碼的可執行文件。

作用:打包代碼為可執行文件。

至於為什麼要轉換成可執行文件呢?

To:因為在他人的電腦上並非安裝有Python的IDLE或Python的解釋器,因此需要將.py原始碼轉換成無需原始碼的可執行文件。

此庫為第三方庫,在cmd窗口下下載命令:pip install pyinstaller

使用說明:在原始碼所在目錄下打開cmd窗口輸入:pyinstaller -F <文件名.py>

庫常用參數 :

Pyinstaller-h:查看幫助

pyinstaller--clean:清理打包過程中的臨時文件

pyinstaller-D,-onedir:默認值,生成dist文件(不推薦使用)

pyinstaller-F,--onefile:在dist文件夾中只生成獨立的打包文件

pyinstaller-i<圖標文件名.ico>:指定程序使用的圖標文件(icon)

pyinstaller -i 名字.ico -F 名字.pyTo:圖標文件需在python文件中



科赫曲線:為了理解科赫曲線,首先我們得認識一下高大上的分形幾何

分形幾何:是一種迭代的幾何圖形,廣泛存在於自然界中,在分形幾何中有一種科赫曲線,也叫雪花曲線。

科赫曲線的轉換:0階,1階,2階...(對其中的直線不斷迭代)

To:關於科赫曲線了解更多可百度哦。

科赫曲線的遞歸繪製:

遞歸思想:函數+分支 

遞歸鏈條:線段的組合 

遞歸基例:初識線段

科赫曲線繪製

import turtledef koch(size,n):    if n ==0:        turtle.fd(size)    else:        for angle in [0,60,-120,60]:            turtle.left(angle)            koch(size/3,n-1)def main():    turtle.setup(800,400)    turtle.penup()    turtle.goto(-300,-50)    turtle.pendown()    turtle.pensize(2)    koch(600,3)    turtle.hideturtle()

雪花效果實例:

import turtledef koch(size,n):    if n ==0:        turtle.fd(size)    else:        for angle in [0,60,-120,60]:            turtle.left(angle)            koch(size/3,n-1)def main():    turtle.setup(600,600)    turtle.penup()    turtle.goto(-200,100)    turtle.pendown()    turtle.pensize(2)    level=3    koch(400,level)    turtle.right(120)    koch(400,level)    turtle.right(120)    koch(400,level)    turtle.hideturtle()
main()

(Python系列)未完待續...

往期推薦:

為你,千千萬萬遍.

關注程式設計師Bob公眾號,與你一起終生學習

一鍵三連,就差你了

相關焦點

  • python項目打包之Pyinstaller
    而本公眾號的作者當時也受到這股風潮的撩動,加入了python編程的大軍。幸運的是,現所在的課題組也更多的使用python進行編程和分析數據,因此也算所學的東西沒有浪費吧。然而,當最近希望發布之前用python寫的可視化項目Multi-omics Visual(推文為《高效繪圖小工具:Multi-omics Visual》)時,卻面臨打包發布較為複雜(相比於其他程式語言)的問題。
  • Python打包發布神器—Pyinstaller
    (點擊上方公眾號,快速關注一起學Python)作者:平山原文連結:http://blog.51cto.com
  • Python打包工具--Pyinstaller詳細介紹
    因為第一次接觸python的時候,就是看到網上有人用Python編寫的工具,可以直接運行在windows機器下。這種脫離編譯環境/虛擬機而單獨運行的能力是我一直期待的,有人會問為什麼不學c++?但在沒有基礎的前提下去學這些東西,可想而只當時有多苦B。最終慢慢玩膩了,才重新一步步從基礎開始學起。最近項目在做一個集成打包工具,需要在Linux環境下將很多基礎環境通過腳本進行自動化的打包、安裝、運行。本來是打算通過shell完成了,但由於模塊很多,又牽扯大批量的配置文件,所以最終選擇了python。但最終客戶方要求,執行的腳本可以在一臺全新的網絡隔離的機器上進行運行。
  • Pyinstaller 打包的兩個小技巧,太實用啦~
    成功後會在同級目錄下生成一個dist文件,裡面就是一個和代碼文件名同名的可執行文件:雙擊該可執行文件,我們可以看到直接在python解釋器裡運行測試.py文件時一樣的結果:如果沒有指定,則默認使用當前目錄來生成 spec 文件-p設置 Python 導入模塊的路徑(和設置 PYTHONPATH 環境變量的作用相似)。也可使用路徑分隔符(Windows  使用分號,Linux 使用冒號)來分隔多個路徑-n指定項目(產生的 spec)名字。
  • 三個你必須要記住的Pyinstaller打包命令——利用Python實現打包exe
    但是呢,我們開發的腳本一般都會用到一些第三方包,可能別人也需要用到我們的腳本,如果我們將我們的xx.py文件發給他,他是不能直接用的,他還需要安裝python解釋器,甚至還要安裝我們用的那些第三方包,是不是有點小麻煩?但是我們都知道,PC是可以直接運行exe文件的,這就為我們提供了一個便捷的方式。所以,從看了這個教程以後,這都將成為過去式,打成exe之後,分享即可用。
  • Python|Pyinstaller打包Python程序的過程詳解
    Pyinstaller相比於同類的優勢:1)支持Python2.7, Python 3.3-3.62)生成的可執行文件字節數更小3)對第三方包的支持非常好,只需要將它們放到python的解釋器對應的文件夾中,Pyinstaller便可自動打包到最終生成的可執行文件中。
  • pyinstaller-Python打包工具
    最近用Python寫了一個小的功能,想把它發送給一個朋友讓她運行試用,但是她沒有安裝Python要怎麼辦呢?
  • Python實現貪吃蛇小遊戲!!pyinstaller打包成exe!
    pygame允許你在 Python 程序中創建功能豐富的遊戲和多媒體程序,是一個高可移植性的模塊可以支持多個作業系統,用它來開發小遊戲非常適合。pip install pygame -i http://pypi.douban.com/simple --trusted-host pypi.douban.com利用python的pygame第三方庫和面向對象編程的方法,實現簡單的貪吃蛇小遊戲,還可用pyinstaller打包成exe,方便自己想玩的時候直接點開或者分享給別人
  • PyInstaller打包python程序
    用python寫的工具寫好了,想打包然後發給測試同事使用,最後選擇了PyInstaller,支持Windows、Linux、OS X,支持打包成一個文件夾或單個EXE文件。我是直接在線安裝的,在CMD輸入:pip install pyinstaller自動下載了PyInstaller-3.1.1.tar.gz和pypiwin32-219-cp27-none-win_amd64.whl並安裝。如果不行也可以去官網自己下載安裝(http://www.pyinstaller.org/),不過應該要先安裝pypiwin32。
  • Pyinstaller打包,文件太大了怎麼辦?
    直接用Pyinstaller,打開cmder:pyinstaller -Fw E:\test\url_crawler.py (-F 是打包成一個文件,-w是不出現調試窗口,因為我的小工具裡有GUI,所以不用默認的調試窗口
  • docker&pyinstaller兩步法構建小體積容器(八)
    amp;gunicorn實現負載均衡✓docker&ngxtop並實時解析nginx日誌✓docker&supervisor監控你的服務✓docker&pyinstaller兩步法構建小體積容器✓locust對你的服務做高並發測試postman熱門的API調試工具環境依賴redhat
  • Python Pyinstaller-打包程序
    將Python腳本打包稱一個exe或者一個可運行的綠色程序,或者在linux中就是個可執行文件,不需要依賴Python環境了,很方便        寫了一個腳本要在他的電腦中運行,但是基本很多人沒有安裝python
  • 七夕用python給男朋友寫的小程序,感動哭了.
    七夕將至,給男朋友寫了個小程序,把他感動哭了,把我可累慘了。可樂我也不是程序媛專門敲代碼的,雖然也學過,但也僅局限於用pandas處理一下數據的程度,要寫一個界面並且能讓對方直接打開,有點超綱。但是經過5天的不懈努力,終於也算寫出來了,就長下面這個樣子,其實就是Python裡用tkinter模塊做的一個GUI圖形界面。
  • 利用python實現.py文件轉化為可執行程序(以科赫雪花為例,附視頻)
    科赫曲線是一種分形,其形態似雪花,又稱科赫雪花、雪花曲線。        看著還不錯吧?那麼下面用代碼實現它! 首先在python的IDE環境下創建腳本文件KochDrawV2.py,其內容為import turtledef koch(size, n): if n == 0: turtle.fd(size) else: for angle in [0, 60, -120, 60]:
  • 利用pyinstaller打包Python程序為一個可執行文件
    目前(2020)最佳的策略是使用pyinstaller。pyinstaller不僅支持打包整個運行環境到一個可執行文件,而且還支持加密。但唯一的問題是,必須依賴外部的libc.so。兩個問題在pyinstaller中都無法解決,只能規避。因此,pyinstaller仍然無法幫助Python獲得像Golang、Rust那樣完美的打包效果,但也算比較接近了。
  • pyinstaller打包Python文件為exe方法
    1.安裝Pyinstaller通過包管理工具pip下載,類似於RedHat中的yum工具pip install pyinstallerPython 2.7.9 + 或 PythonSuccessefully installed pip-xx.xx.xx 安裝成功2.打包python文件1.進入打包文件所在文件夾,比如
  • 乾貨 | pyinstaller打包exe免殺和逆向淺析
    說明:本文python為python3,打包的庫為pyinstaller。本文的測試時間跨度比較長,文中的方法可能早已失效,感謝大家理解。在當前攻防演練中,很多情況下都需要自己動手做一些免殺,在這裡本文就以有手就會的python語言為例,來一起學習下python免殺的那些事。
  • 別再問我怎麼Python打包成exe了!
    但是呢,我們開發的腳本一般都會用到一些第三方包,可能別人也需要用到我們的腳本,如果我們將我們的xx.py文件發給他,他是不能直接用的,他還需要安裝python解釋器,甚至還要安裝我們用的那些第三方包,是不是有點小麻煩?但是我們都知道,PC是可以直接運行exe文件的,這就為我們提供了一個便捷的方式。
  • 用 pyinstaller 生成傳參數的可執行文件
    安裝 pyinstaller直接用 pip install pyinstaller 安裝即可,安裝時遇到如下錯誤:module 'setuptools.build_meta
  • 用PyInstaller將python程序轉成exe文件執行
    最近剛接手幾臺windows伺服器,寫了幾個自動備份數據的python腳本,要放到windows下去執行,一般來說如果要windows能執行python腳本,第一要在windows機器上安裝python ,另外還要配置windows環境變量能讓腳本執行,如果1~2臺windows還好,如果上百臺都要安裝python,然後在設置環境變量,估計要瘋,當然如果再寫一個安裝程序、部署環境變量,我估計也不是不可能