從Scratch到Python——Python生成二維碼

2021-02-18 少兒創客幫

# Python利用pyqrcode模塊生成二維碼

import pyqrcode

import sys

number = pyqrcode.create('從Scratch到Python——Python生成二維碼',encoding='utf8')

number.png('d:\\a.png',50)

!微信掃描結果

我相信,將來Python一定會走進中小學生的教材,像Scratch一樣成為編程入門語言;至於人手一把遊標卡尺,我覺得是無腦黑,畢竟學漢字還要用個四線方格呢,設計這個針對Python的練習本可比作文本容易多了.我強烈的相信Python一定會走進中小學的教材,為此我一直在努力.

Python有什麼好?

試圖向沒有接觸Python的人解釋Python的好處是比較困難的,對於Python Turtle來說,跟Logo語言辣麼相似,學logo就好了,幹嘛學習Python呢?我竟然無言以對,畢竟Python的種種強大對小學生來說是感知不到的.

今天看自己安裝的Python模塊的文檔,無意中發現了竟然安裝了 pyqrcode模塊,跟二維碼相關的嘛,於是嘗試了一下,拋開兩行導入,只要兩行就可以生成一個二維碼真的超簡單的.

# Python利用pyqrcode模塊生成二維碼

import pyqrcode

import sys

number = pyqrcode.create('從Scratch到Python——Python生成二維碼',encoding='utf8')

number.png('d:\\a.png',50)

實際上這段代碼是很簡單的,但是呢可以跟Python turtle很好的結合起來.

logo語言在國外編程教育歷史中曾經扮演過很重要的角色,然而其歷史地位已經被Scratch所取代,採用兼容Logo語言的Python turtle絕不是為了開倒車,利用Python turtle掌握編程基本概念之後,可以利用Python的簡潔強大開發出屬於自己的小工具.

Scratch雖然很強大,scratch利用自帶的繪圖功能也並非不能繪製二維碼,只是對於小孩子來說難以理解,而Python因為有著豐富的代碼庫,所以只需要引入對應的庫,然後調用相關的指令就好了.

我們知道Scratch中有詢問命令,同時可以獲取到詢問的回答,在Python turtle中也有類似的功能.

那麼我們就可以用Python turtle構建一個可以生成包含指定文字的二維碼.

如今,二維碼在日常生活中隨處可見,能夠自己生成二維碼真是件讓人開心的事情呢.

這兩天一直在分析Python turtle的原始碼,也增加了許多功能,當然因為 Tkinter的限制,獲取滑鼠的坐標需要很多複雜的工作;有人說Python turtle能做的Pygame,pyglet,pyqt都能做,為什麼非得用Python turtle呢,因為這是最簡單用文本編程構建圖形化界面的工具,門檻很低,沒有的功能二次開發加上就是了.

但是這種能夠跟交互式命令行完美兼容的特點,是pygame也好,pyglet也好,pyqt也好,所不具備的,而這就是scratch成功的 低門檻的特性,雖然Python已經足夠簡單易學,但是對於小孩子來說,儘量降低學習成本是有必要的,儘量符合孩子的認知特點.

同樣scratch還具有個性化多樣性的特點,允許使用自己的圖像,照片,繪製的圖畫,這對Python來說完全不是問題,況且Python有各領域豐富的代碼庫,來完成各種稀奇古怪的任務.

至於scratch的無極限,據說有人用scratch來做光線追蹤程序,這不是不可以的,這個特點強調隨著對scratch掌握程度的加深可以開發出複雜的作品,但是scratch本身的性能是有限制的,這點在官方的paper中也有所體現;而Python完全不存在這個問題,只有你想不到,Python能夠完成的任務超乎你的想像.

以上是我堅定不移的推崇Python的原因中的一些,歡迎大家留言,探討.

對了,之前有老師留言問,Python能否跟arduino交互,可以的.跟scratch類似,寫入一個固件,然後Python就可以跟arduino互動的,但是不能編譯,這點比較遺憾;其實硬要編譯也是可以的,不過需要把Python轉換成c語言的代碼,然後調用相關的命令上傳程序到arduino,也有人在做這方面的工作,初期的話,我們使用Python+固件的方式交互比較好一些.後面會介紹

相關焦點

  • python和scratch生成隨機不相同的十個數
    scratch生成10個隨機數很簡單,循環10次,循環裡面每次獲取一次1-10範圍內的一個隨機數。可以結果,出現了相同的數字,不符合我們的要求。先自己生成一個包含1-10不同的10個數列表,然後每次隨機從裡面隨機獲取一個,獲取到後添加到新的列表,接著在原來的列表裡刪除對應的元素,重複10次即可。下面是實現過程。1.先生成一個10個數字的列表,數字從1-10不相同。
  • scratch/python/c++,小孩學編程學哪個好?
    scratch和編程貓各有優缺點。scratch是麻省理工的公益軟體,完全免費,到現在位置最新版本為3.0。由於它是公益軟體,所以官方更新慢,但是也正因為是公益軟體,接口開放,所以有很多組織和個人為其建立了很多擴充,可以用scratch控制多種硬體機器人。市面上的少兒編程培訓機構基本都是scratch編程教育。
  • python批量生成合同
    對於批量操作合同文件,逐個去比對替換文件,複製粘貼是個很費勁的事,於是乎有了python
  • 每日一課 | Python 中生成 0 到 9 之間的隨機整數
    很少有Python示例展示如何生成0(含)和9(含)之間的隨機整數0
  • Python Sphinx 生成簡潔大方的文檔
    Sphinx 是一種工具,是一個有趣 python 的第三方庫,它允許程式設計師以純文本格式編寫文檔,Spninx 可以輕鬆生成各種格式的輸出,比如 html,pfd,等等。Python 也有自己的方案,解決文檔就是 Sphinx ,Python3.x 官方的文檔就是用這個生成的。所以,如果你的也是 Python 項目,那麼可以生成一個和官方文檔同款的文檔項目,非常實用和拉風。Sphinx 怎麼用?
  • 一種用Python生成詞雲
    一種用Python生成詞雲我們在閱讀一篇很長的文章時,總先看看文章的關鍵詞來獲知文章的大概內容。今天我們就來製作一個詞雲程序,將文章中出現次數較多的詞語提取出來,生成一張詞雲圖。首先需要安裝好了python的運行環境,並且以pycharm作為默認工具,安裝所需的第三方庫,它們分別是jieba 和wordcloud.安裝可以參考:https://www.jb51.net/article/141320.htm然後開始製作詞雲程序。
  • Scratch、Python學哪個?兒童編程怎麼學?全面解析編程(上)
    家長們在生活中了解到的編程課程基本上是這幾類:ScratchPython C++(信息奧賽)機器人編程。「編程」和Scratch、python、C++ 是什麼關係?Scratch是一種編程用的工具, Python 和C++是專業的程式語言也可以理解為編程工具。
  • 利用Python隨機生成100道加法題
    本文我們將利用python實現一個很有意思的功能:隨機生成100道加法題。首先給出效果圖:代碼很簡單:雖然代碼看上去有很多的行,但是核心代碼就是4、5兩行。其中第4行是隨機生成100對整數,並保存為tuple類型,如圖所示:第5行是將兩個隨機整數轉換為加法的形式,如圖所示:其中代碼中的random.randint表示生成隨機整數,下面我們就對random模塊進行詳細介紹。
  • python操作excel:批量生成超連結
    excel設置超連結的函數是HYPERLINK,這裡用python批量生成超連結的思想其實很簡單,就是將公式寫入excel就行。
  • C語言/Python/Scratch考生考試流程
    一、考試時間 C語言、python>scratch重要|請考生務必了解考試時間
  • 數據統計可視化——python生成詞雲
    詞雲庫WordCloudwordcloud庫,可以說是python非常優秀的詞雲展示第三方庫。詞雲以詞語為基本單位更加直觀和藝術的展示文本而且使用簡單,內容豐富,先看看它生成的詞雲是什麼樣的。(frequencies) 該函數根據詞頻生成詞雲generate_from_frequencies(frequencies[, ……]) 根據詞頻生成詞generate(text) 根據文本生成詞雲process_text(text)
  • python入門Python基本語法,python入門到精通
    python入門 這是我在自學路上,整理的不錯的Python自學資料。需要的小夥伴可以掃描下方二維碼:                 python入門python你不去認識它,可能沒什麼,一旦你認識了它,你就會愛上它Python基本語法python入門1.定義變量:代碼正文:
  • 詳解 Python qrcode 二維碼模塊
    ,取值範圍從1到40。3、box_size:控制二維碼中每個格子的像素數,默認為 10。4、border:控制二維碼四周留白包含的格子數,默認為4。5、image_factory:選擇生成圖片的形式,默認為 PIL 圖像。6、mask_pattern:選擇生成圖片的的掩模。
  • 從Scratch開始零基礎編程學習、用Python入門
    你可以從scratch開始,它非常適合純小白、小孩子,甚至80歲老人。 下面就是scratch語言界面:你不需要安裝任何編譯器,直接瀏覽器打開他主頁就可以開發了。實際上就是拖空間,輸入些簡單參數或內容就OK。
  • 思維導圖:通關python列表
    list.reverse()list.sort(cmp=None,key=None,reverse=False)對原列表進行排序,默認升序常用操作拼接重複刪除最大值最小值轉換列表排序注意排序優先級:數字>大寫字母>小寫字母>符號>中文永久性排序:sort()臨時性排序:sorted()反轉排序:reverse()創建數值列表使用range()函數生成一系列數值
  • 翻譯:Python控制樹莓派版Minecraft入門大揭秘
    將會學習如何用控制玩家,手動搭建積木塊,用python控制遊戲中的一切。這跟scratch社區中為了做複雜作品而自動出現的分工是一致的,這在scratch官方的論文*《scratch:programming for all》 *中有非常詳細的描述。
  • 利用Python自動生成小學生加減乘除口算考試題卷!無所不能!
    所以我們當家長的,要提前準備一下,就利用Python開發了一套自動生成小學生口算題的小應用。此項目的源碼可供下載:【 原始碼:使用Python開發自動生成口算題應用 】為了讓程序猿解放抄題的雙手,讓你擁有更多的時間去寫代碼而不用去手寫幾道口算題而傷神傷腦。
  • Python辦公自動化 | 批量word報告生成工具
    有時候我們需要按照某種規則生成一種固定模板的word報告,python能夠很好的完成這項工作。
  • Python 模塊學習:random 隨機數生成
    random.randomrandom.random()用於生成一個0到1的隨機符點數: 0 <= n < 1.0random.uniformrandom.uniform的函數原型為:random.uniform(a, b),用於生成一個指定範圍內的隨機符點數,兩個參數其中一個是上限,一個是下限。
  • 工程化你的Python項目
    setup.py中也會有依賴,當我們執行python setup.py install的時候這些依賴會被安裝到當前系統中。所以我們希望setup.py中的依賴和requirements.txt的依賴保持一致。