【python勸退指南】重複執行,才是程序最大的魅力!

2021-03-02 斜槓碼農
        「人類的本質是複讀機。」,那麼人類發明出來的東西是什麼呢?沒錯,也是複讀機。這節課我們來一起揭秘複讀機的本質。        在之前的兩節中,我們已經講過了 Number (數字)、String (字符串)、Boolean (布爾類型) 這三種變量類型。同時也借 Boolean (布爾類型) 講解了python中的條件語句。(本節內容較多,請細細品味)        這節我們來借 List (列表) 類型,來講解一下python中的複讀機:循環語句。某一列數據        我們所了解的 基本表格 ,其結構一般都是由 表頭 和 數據 組成。其中 表頭 指明表格每一列的內容和意義(我們可以將其理解為我們之前學到的 變量 的名稱),而 數據 則就是我們將要講的 List (列表),數據之間以 「,」 分割。來看一組數據:
students =['Jack','Rose','Tom','Kite']print(students)objects =['English','Chinese','Geography','History']print(objects)reports =[99.99,89.23,60.00,78.33]print(reports)movies =['Iron Man',2008,'Jon Favreau',' Robert Downey Jr., Gwyneth Paltrow, Terrence Howard ',7.9]print(movies)

        像上面這樣的一組數據就組成了一個列表,我們可以稱其為 數組。列表是有序的,既然有序的數據,那麼必定是有 索引 的存在(標明列表中的某一個元素的位置)。索引 從 0 開始計數,依次往後推。我們可以通過 索引 來訪問(查看)列表中的單個數據。(python還有個神奇的操作,那就是索引可以為負數,即倒著查看)我們來看幾個簡單的例子:
English
Chinese
Geography
History

objects =['English','Chinese','Geography','History']print(objects[1])print(objects[-2])print(objects[0:3])print(objects[0:-3])

相信不細心的朋友已經由於objects少寫一個s報錯了吧。python以及其他程式語言的變量名除了數字、字母、下劃線之外,還不允許出現 關鍵字。這裡的關鍵字指的是語言本身定義的關鍵字,比如int、long、if之類的。詳情可自行百度python關鍵字        是不是很神奇?不知道大家有沒有發現,列表 中的數據都是我們變量數據類型中的基本類型。那麼我們不妨再仔細想一下,列表中是否可以再嵌套列表呢?答案是:完全可以。某幾列數據        列表其實是有維度的,剛才提到的是一維的列表(行話裡其實更習慣叫它 數組)。如果是列表嵌套一層列表就是 二維 的列表,依次類推,列表嵌套列表再嵌套列表就是 三維 的列表。像這樣無限地嵌套下去,就變成了 N維 列表。
ironMan =['Iron Man',2008,'Jon Favreau',' Robert Downey Jr., Gwyneth Paltrow, Terrence Howard ',7.9]print(ironMan)superHeros =[['Iron Man',2008,'Jon Favreau',' Robert Downey Jr., Gwyneth Paltrow, Terrence Howard ',7.9],['Super Man',1987,'Richard Donner','Christopher Reeve, Margot Kidder, Gene Hackman',7.3]]print(superHeros)movies =[superHeros, ironMan]print(movies)

        同理,N維數組的索引也是從0開始。且每個緯度都是從0開始,我們來看一個例子。

# 超級英雄電影superHeros =[['Iron Man',2008,'Jon Favreau',' Robert Downey Jr., Gwyneth Paltrow, Terrence Howard ',7.9],['Super Man',1987,'Richard Donner','Christopher Reeve, Margot Kidder, Gene Hackman',7.3]]# 鋼鐵俠print(superHeros[0])# 超人的上映日期print(superHeros[1][1])# 如果要訪問N維數組:movies[n][n][n]...[n]

        如果要訪問三維數組則會有三個 [n],N維數組則有N個 [n],表示獲取第N維的某個內容。

開始複讀機模式        每次只訪問其中的某一條數據只能適應一部分場景,大多數情況下我們會訪問所有的數據,用於進行計算。這時候就該我們的 循環語句for 出場了。
chinese =[99.99,89.23,60.00,78.33]count =0for score in chinese:  count = count + scoreprint(count/len(chinese))math =[91.92,88.88,82.10,62.33]english =[72.23,82.12,62.42,98.87]reports =[chinese, math, english]count =0for subject in reports:for score in subject:  count = count + scoreprint(count/(len(chinese)+len(math)+len(reports)))

        就像 條件語句if 一樣,循環語句for 也是可以多層嵌套的。當然,嵌套的層數決定於你數據的深度或你要執行的次數,每一層執行 N 次,那麼 M 層嵌套就執行 N^M 次。默契度測試        測試我們默契度的時候到了,不知道大家上一節的題目做的怎麼樣,接下來結合本節內容,我們來實現一下默契度測試程序吧。
questions =[['Do I like fruit?',0],['Do I like cat?',0],['Do I like vegetables?',1],['Do I like shopping?',0],['Do I like to watch anime?',1],['Do I like dog?',1]]print('Please answer these questions(1:yes,0:no)')result =0for question in questions:  print(question[0])    temporary = int(input('Please input your answer:'))    print()    if temporary == question[1]:    result = result +1  else:    result = result -1print('Our tacit understanding is '+str(result))if result >= len(questions)/2:  print('We are the best friends.')elif(result < len(questions)/2)and(result >0):    print('We are friends')else:  print('Emmmm...who are you?')

        將上面代碼複製到 [https://code.y444.cn/python] 運行,你就可以進行默契度測試了(別忘了在輸入提前輸入好內容哦~)。複讀機與聖誕樹        課後作業:馬上就到 聖誕節 了,學了這麼久的python,讓我們來用本章和之前所學到的知識畫一顆簡單的聖誕樹吧。解題思路:最簡單的聖誕樹就是一個 等腰三角形 和一個 | 組成,可以用 * 來當作聖誕樹的葉子,print()列印出來葉子組成一個等腰三角形,然後在列印出一個樹根。總結        至此,我們已經學完了程式語言中最最最最基礎的知識點(在程序不複雜的年代,這些內容已經夠用了): 變量、條件語句、循環語句。接下來的課程我們會學習一些更 「高端大氣上檔次」 的內容,其中會穿插 人工智慧、爬蟲 等前沿知識點。

相關焦點

  • 說說Python程序的執行過程(一)
    c應該是compiled的縮寫才對啊!為了防止其他學習Python的人也被這句話誤解,那麼我們就在文中來澄清下這個問題,並且把一些基礎概念給理清。計算機是不能夠識別高級語言的,所以當我們運行一個高級語言程序的時候,就需要一個「翻譯機」來從事把高級語言轉變成計算機能讀懂的機器語言的過程。這個過程分成兩類,第一種是編譯,第二種是解釋。
  • Python程序執行過程與字節碼
    程序寫好後,只需敲下 python 命令,便可將程序啟動起來並開始執行:$ python some-program.py那麼,一個文本形式的 .py 文件,是如何一步步轉換為能夠被 CPU 執行的機器指令的呢?
  • Python程序打包為exe可執行文件
    點擊一下關鍵詞查看往期學習筆記:Python學習筆記(一)Python學習筆記(二)Python學習筆記(三)Python學習筆記(四)全文約6000字,閱讀約需9分鐘函數式編程是提高效率的好辦法,因為把一些需要重複執行的代碼進行了封裝,以後可以重複調用
  • 【PC樣本分析】python可執行程序分析
    概述第一次分析這種python exe程序,最開始還比較懵逼,直接對exe就開始下手了,發現它竟然會去釋放並運行python dll,一直沒想明白,結果浪費了不少時間,最後終於找到了正確的分析思路,所以,覺得挺有意思的,就分享給大家看看。樣本很大,有3.16MB,一般的exe程序不會這麼大,所以用了壓縮殼UPX。1.1.
  • 計算機畢業設計中用HTML網頁調用本地Python程序
    你只需要修改你需要執行的文件名,下面就是調用的方法:exec1('python hello.py')# 括號內的意義是 用 python 來執行 hello.py 這個文件,!注意python是已經添加到環境變量了的。
  • python執行系統命令
    在實際開發中,除了編寫python自身的代碼外,還經常需要執行作業系統的命令。
  • 【python勸退指南】小學數學老師喊你回來用python學代數!
    現在以小學的代數代數為引,帶你進一步了解python語言。        還記得上一節我們提到的線上編程環境嗎?我們接下來課程用到的代碼,都將在 https://code.y444.cn/python 上運行。進入該網站後,點擊左上角的下拉框,將 python2.7 切換為 python3.6 。課前熱身        按照我們行業規矩,學習一門程式語言首先要向計算機問好。
  • Python開發:Win10創建定時任務執行Python腳本
    Python腳本,如果手動輸入執行執行,會產生頻繁的工作量,對於這種情況,在Win10環境下創建任務計劃程序:  Win10創建定時任務  電腦桌面→我的電腦→右鍵→管理  計算機管理→系統工具→任務計劃程序→創建基本任務
  • Python—程序語言入門
    主要教法     講授演示法+上機操作   教學過程一、複習鞏固1、什麼是編程2、Python--我們和計算機溝通的語言所想要表達的意思——>編程軟體翻譯成二進位——>計算機接收並執行常用、最流行的幾種程序語言:C、C++、c#、Java 、VB、python
  • Python指南:高級程序設計之過程型程序設計進階
    假設我們要做一個控制臺程序,該程序有幾個菜單:(A)dd (E)dit (L)ist (R)emove (Q)uit用戶可以輸入a、e、l、r、q 分別進入各個菜單,我們一般的思路是使用 if...else...
  • 如何編寫和運行Python程序
    1、使用Pyhton自身提供的交互式解釋器在Linux、Windows、Mac OS的命令行窗口或Shell窗口,執行python命令,啟動Python交互式解釋器。第一種方式是進入Pyhton的安裝目錄,直接運行python.exe程序;第二種方式是進入Windows命令行窗口,在命令行窗口啟動python.exe。在Windows命令行窗口啟動Python交互式解釋器,首先需要將Python安裝目錄的路徑,添加到Path系統環境變量。否則,只能進入Python安裝目錄啟動交互式解釋器。
  • 07-python中的程序組織結構
    你好,我是在學python的小潭。通過昨天的文章06-python中的運算符我們熟悉了python中運算符的定義和使用。
  • python 實用程序 | PDF 轉 Word
    於是乎我就想到了利用 python 來寫個程序,把 pdf 轉成 word 文檔。秉承著不要重複造輪子的想法,我首先在網上搜索了下。果然已經有人寫好了,我們直接拿來用就行。程序一共只有 60 行代碼,使用也非常的簡單,程序原始碼import osfrom configparser import ConfigParserfrom io import
  • Python文件在windows作業系統下如何執行
    我們用相同的方法來理解如何在windows上執行一個python文件:在windows上執行一個python文件。首先作業系統是一樣的,window10平臺。然後Python2.7也安裝在windows上面了。然後我們也生成了一個python文件。按打開word文件的邏輯,有個這三個條件。
  • 快速掌握用python寫並行程序,乾貨滿滿
    三、用python寫並行程序在介紹如何使用python寫並行程序之前,我們需要先補充幾個概念,分別是進程、線程與全局解釋器鎖(Global Interpreter Lock, GIL)。程序本身只是指令、數據及其組織形式的描述,進程才是程序的真正運行實例。例如,Visual Studio開發環境就是利用一個進程編輯源文件,並利用另一個進程完成編譯工作的應用程式。
  • Python基礎教程之循環語句的使用
    程序的三大流程* 在程序開發中,一共有三種流程方式: * **順序** —— **從上向下**,順序執行代碼 * **分支** —— 根據條件判斷,決定執行代碼的 **分支** * **循環** —— 讓 **特定代碼 重複** 執行
  • python自學指南
    這是一篇 python入門指南,針對那些沒有任何編程經驗,從零開始學習python的同學。不管你學習的出發點是興趣驅動、拓展思維,還是工作需要、想要轉行,都可以此文作為一個參考。通過自學,你只要在幾分鐘內就可以正常運行一個基本的python程序;再過1個月,你甚至都可以成為技術大拿了!
  • python二級考試大綱內容:程序的三種控制結構
    #python#繼續學習python二級考試大綱內容:程序的三種控制結構順序結構、分支結構和循環結構這三種控制結構是編程的基礎組成部分,無論是準備考全國計算機等級考試還是單純是為了興趣而學習python,都必須掌握。
  • 慢步python,如何用python語言創造出一個真正的獨立exe程序?
    我們學習編程,終極目標還是編寫一個獨立的應用程式。獨立的應用程式應該像QQ,微信一樣不依靠其他程序運行,只有平臺支持,就可以運行。從這個意義上說,所用應用程式都是基於作業系統運行的。那麼如何用python語言創造出一個真正的獨立的應用程式?就是我們電腦上的exe程序?
  • python中調用MATLAB程序
    上次寫了MATLAB和Python的互聯以及MATLAB中調用python程序,今天講解python中調用MATLAB程序。