闞淑華
(青島第七中學 山東省青島市 266001)
當前的初中生正是千禧一代,是我們所說的網絡原住民,而教師大多都是網絡移民,由于兩者生活環境、生活方式、教育方式的不同,導致兩者的思維方式也存在著一定程度的代溝和差異。在這個科技高速發展、思想多元包容的時代,青少年理應學習計算機信息技術,理應了解掌握計算機編程語言,只有這樣,才能更好地與時代共發展,更好地面對未來的世界。
本文將對Python 編程語言作簡單介紹,探究初中生所應該了解的基于Python 編程語言的技術應用。
Python 編程語言最初是在二十世紀80-90年代由荷蘭人Guido van Rossum 設計出來的這是帶四代計算機編程語言。Guido van Rossum 在2005年加入谷歌之后仍然領導著Python 語言版本的更新與開發工作。
Python 在國內的發展起步較晚,最近幾年才開始流行起來,但它在國外的應用可謂是相當廣泛,很多搜索引擎和網站都是基于Python 語言完成的。Python 作為一種腳本語言,可以以極高的效率完成代碼的開發,具備多種多樣、強大實用的第三庫工具,且語法易于理解,能夠簡單快速地進行編程,故而應用也相當廣泛,不僅可以處理文字,還可以用于開發和設計Web 游戲。
Python 語言功能強大,具有語言簡單、跨平臺性、解釋性、交互性、面向對象、強大的生態系統等特性。
Python 語言的簡單體現在它的語法易于理解,且表達優美。例如,與C 語言或Java 等編程語言相比,使用Python 語言在屏幕上輸出“hello world”這個經典的句子并不需要建立main 函數,可以直接敲入輸出語句,實現字符串的輸出顯示:
>>>print“hello world!”
屏幕輸出顯示結果為:hello world!
Python 語言的簡單還體現在它的代碼縮進語法。代碼縮進使得利用Python 語言所寫的代碼結構更加整齊,省略了其他語言中的花括號和分割代碼,代碼之間的層次是依靠冒號和代碼縮進區分的。例如if 語句的寫法是:
If True:
Print“Yes,it is true”
Python 語言的編寫很高效,代碼行數與其他編程語言相比來說較少,可以為程序員節省大量的工作量,提高編程效率,節省時間成本和人力成本。這種語言很適合作為編程學習的入門課程,其容易理解也容易上手,使用門檻較低,語法邏輯也很清晰完整,是一門特別實用的編程語言。
Python 語言是支持面向對象的,這種設計更加契合人類的思維方式。同時,Python 語言的開源使得程序可以直接在不同的平臺上運行,而不需要考慮不同平臺之間的差異性對程序進行修改。
Python 強大的生態系統為用戶帶來了極大的便利,能夠滿足用戶的各種需求。專業開發者可以直接使用豐富多樣的第三庫工具達到開發目標,縮短了開發時間。
Python 集成開發環境可以選擇較低的安裝版本,比如Python-3.5.3,但必須是Python-3.x 系列。安裝低版本時要單獨設置環境變量,具體方法是使用cmd 命令或者在計算機的高級系統設置中進行設置。安裝好集成開發環境后,還可以安裝PyCharm 或者全體輔助工具,這些輔助工具可以實現對代碼進行調試和糾錯等功能,從而提高編程的效率。
Python 具有很多的第三庫工具,這些工具可以實現多種多樣的功能,比如圖像和視頻處理、數據挖掘等。應用random 庫中的隨機數函數求解π,同時掌握蒙特卡洛方法。word cloud 庫可以制作日常生活中常見的關鍵詞云層,用來顯示詞語在文本中出現的頻率,顯示文本的主旨等。Matplotlib 二維繪制庫可以生成高品質的圖片,SciPy 可以實現數據的運算功能,第三庫還可以編寫自動批改選擇題的程序。又例如應用Turtle 庫繪制圖形,Turtle 庫又被稱為海龜繪圖庫,是一種基礎的Python 圖形繪制函數庫,其原理就是通過應用程序控制海龜的爬行,將其爬行軌跡生成圖形。通過應用Turtle 庫除了可以學習基礎的圖形繪制以外,初學者還能夠掌握Python 編程的應用能力和程序設計結構能力,可謂是一舉多得。每個工具都具備不同的功能,第三庫工具的學習和使用可以激發編程者的創意,凸顯個人的創新和特點。
第三庫的安裝一般會使用pip 工具和cmd 命令進行安裝,也就是以管理者的身份通過pip install 進行安裝,當然也可以自定義安裝和文件安裝。
軟件功能的實現離不開硬件的支持,代碼的輸送也是以硬件為基礎的。學習計算機的硬件,內容包括了CPU 的組成、輸入輸出系統、計算機工作原理等。先了解了計算機的硬件結構,才能更好地理解計算機語言的語法邏輯。
操作系統是計算機系統軟件的重要組成部分,能夠與外界進行通信。Python 的解釋器程序可以將編寫好的程序進行翻譯,轉換為二進制的字節碼,也就是將人類的語法邏輯轉變為機器的語法邏輯,方便機器進行處理。Python 的虛擬機程序組件又可以將轉換后的字節碼存放到操作系統中以備后續調用,軟件通過代碼的指示與操作系統進行溝通,以執行某種功能。
Python 返回結果的表現方式第一種是通過函數實現。例如求字符串中元音字母的個數值可以這樣編寫:
VowelCount(“What is it?”)
Returns 3(one a and two t’s)
第二種表現方式是通過圖形化表達實現。例如使用餅狀圖表示元音字母在全圖中的比例,這種表達方式更加直觀易讀。
Python 應用于數據分析主要是如何利用Python 語言讀取各種文件,如何制作各種圖表,如何實現數據庫的鏈接,如何進行統計分析,如何建模,以及各種Python 包的使用方法。
Python 語言的標準庫可以應用于大數據的處理,這其中的處理邏輯是:將數據轉換為與Python 相適應的數據結構,然后采用適合的Python 工具分析數據,最后得出數據的特征并用合適的結構形式表現出來。例如,采用Python 語言開發數據采集軟件,這種軟件免安裝,可以設置采樣頻率,后臺還能夠自動保存數據,簡化了操作步驟,使得數據的采集分析更加靈活。
Python 還可以用于解決微分方程、矩陣解析、概率分布等數學問題。
Python 語言在數據科學領域的應用是它的核心競爭優勢,其在這一領域的應用前景是很樂觀的。
Python 在數據分析領域的典型應用案例是基于Python 語言的校園一卡通消費信息處理。使用Python 對校園一卡通的消費信息進行分析和處理,并通過可視化技術生成圖像,從而直觀地了解學生的消費水平、消費習慣等信息,為學校的管理決策提供參考。以往大家常用Excel 圖表來反映數值意義,Excel 圖表的制作簡單,但這種方法并不適用于海量數據的處理,于是,Python 語言的優勢就凸顯了出來。利用Python 語言分析某校校園卡每筆消費的額度,可以得到圖1。
通過觀察圖1,可以發現,每筆消費額度在2 元和6 元處達到了峰值,可以得出以下結論:商店2 元和6 元的商品銷量最好,這樣商店就掌握了學生的消費行為,從而制定合理的進貨清單。

圖1:某校校園卡每筆消費額度情況
Python 可以實現Java 的所有功能,Web 應用和網頁游戲的設計更傾向于使用Python。利用Python 建立的豆瓣網、YouTube是Python 之Web 應用的經典例子。使用Python 進行Web 開發大多是基于WSGI 這一傳統的線程模型。WSGI 傳統模式是存在于Python web server、application、middleware 之間的官方規范標準。但WSGI 這種模式存在著兩大局限。第一是其不支持異步,第二是不支持Python3.x。
目前越來越多的網頁游戲的設計都使用Python 編程語言,改變了以往使用CC++語言設計服務端的傳統。在以往的游戲設計中,采用C++編寫host,同時調用多個LUA 腳本語言完成一個項目的業務邏輯,而現在,Python 自身就可以做到這些。
云技術的很多底層的虛擬化都使用Python 語言實現。把資源以服務的方式提供給客戶是云計算的核心思想,IaaS、SaaS、PaaS這些云計算平臺都可以實現這一核心思想。而這些平臺的開放協議棧OpenStack 都是采用Python 開發的。例如易度的PaaS 就是利用現有的開源技術,基于Python 語言建立的。又例如百度云也采用了Python 語言,谷歌搜索引擎的云計算服務更是僅支持Python 這一種語言。
大數據時代網絡資源多種多樣,海量信息應有盡有,基于Python 的網絡爬蟲技術可以在互聯網的海量資源中挖掘出有用信息,緩解大數據時代的信息焦慮。這種技術以用戶需求為搜索目標,分析網頁代碼的class 屬性,利用第三庫工具requests 和beautiful soup4 中的相關函數獲取并下載有用信息。例如網絡圖片爬蟲技術,這種技術主要是搜集網絡上的圖片信息,對制定指定網站上的所有圖片中的信息進行自動提取,然后下載到本地進行保存。所謂爬蟲,是一段程序,可以自動抓取網絡信息,通過程序模擬瀏覽器,然后向站點發送請求,對站點反饋的信息進行分析,提取出所要的圖片信息,下載到本地儲存起來,用于后續的數據分析。網絡圖片爬蟲技術的基本工作流程如圖2所示。

圖2:網絡圖片爬蟲技術的基本工作流程
ArcPy 是軟件開發引擎ArcGIS Engine 自帶的Python 站點包,它可以降低ArcGIS 二次開發的難度和門檻,能夠提供接口、函數和類,主要用于地理數據的查詢和處理。ArcPy 所包括的制圖模塊能夠提供用于自動化制圖的函數和類,可以用來批量制作專題圖。以湖泊環境因子空間分布專題圖的制作為例,批量制作湖泊環境因子空間分布專題圖技術路線如圖3所示。

圖3:批量制作湖泊環境因子空間分布專題圖技術路線
基于Python 和ArcPy 的專題圖批量制作方法實現了專題圖制作的自動化,提高了制作效率,將來可能廣泛應用于數據框架分析工作當中。
Python 的應用領域非常廣泛,越來越受到國內外軟件技術人員的歡迎和青睞,國內的許多高校也開設了Python 編程語言課程。但Python 在國內的推廣和普及仍有較長的道路要走,如何將這種優秀的編程語言更好地應用于人工智能、機器學習、數據科學、金融、運維等領域是學界應該關注的重要課題。