Python程序設(shè)計 課件全套 李輝 第1-10章 Python與編程環(huán)境 -Pandas數(shù)據(jù)處理與分析_第1頁
Python程序設(shè)計 課件全套 李輝 第1-10章 Python與編程環(huán)境 -Pandas數(shù)據(jù)處理與分析_第2頁
Python程序設(shè)計 課件全套 李輝 第1-10章 Python與編程環(huán)境 -Pandas數(shù)據(jù)處理與分析_第3頁
Python程序設(shè)計 課件全套 李輝 第1-10章 Python與編程環(huán)境 -Pandas數(shù)據(jù)處理與分析_第4頁
Python程序設(shè)計 課件全套 李輝 第1-10章 Python與編程環(huán)境 -Pandas數(shù)據(jù)處理與分析_第5頁
已閱讀5頁,還剩665頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第1章Python與編程環(huán)境認識Python安裝Python安裝解釋器安裝PyCharm開發(fā)工具計算機程序與編程語言Python語言概述Python與PyCharm安裝配置了解計算機程序與編程語言的概念了解Python的基本概念和特點熟悉Python的安裝和配置方法掌握PyCharm的安裝和基本使用計算機程序與編程語言

計算機程序計算機編程語言計算機編程語言編譯和解釋1.1

計算機程序又稱“計算機軟件”,是指為了得到某種結(jié)果而可以由計算機等具有信息處理能力的裝置執(zhí)行的代碼化指令序列,也可以理解為能夠被自動轉(zhuǎn)換成代碼化指令序列的符號化指令序列或者符號化語句序列。常見的計算機軟件比如微信小程序、QQ等。1.1.1計算機程序計算機程序機器語言。由二進制0、1代碼指令構(gòu)成,不同的CPU具有不同的指令系統(tǒng)。機器語言程序難編寫、難修改、難維護,編程效率極低。匯編語言。匯編語言指令是機器指令的符號化,與機器指令存在著直接的對應(yīng)關(guān)系。

高級語言。高級語言是面向用戶的、基本上獨立于計算機種類和結(jié)構(gòu)的語言。高級語言的一個命令可以代替幾條、幾十條甚至幾百條匯編語言的指令。

目前,廣泛使用的Python、Java、PHP、C、C++、C#等語言均屬于高級語言。1.1.2計算機編程語言計算機編程語言編譯,是將源代碼轉(zhuǎn)換成目標代碼的過程。1.1.3計算機編程語言編譯和解釋計算機編程語言編譯和解釋

Python語言是一種被廣泛使用的高級通用腳本編程語言,采用解釋方式執(zhí)行。解釋,是將源代碼逐條轉(zhuǎn)換成目標代碼同時逐條運行目標代碼的過程。源代碼源代碼程序輸入解釋器結(jié)果輸出編譯器目標代碼程序輸入程序執(zhí)行結(jié)果輸出Python語言概述Python的起源與發(fā)展Python的特點Python的應(yīng)用領(lǐng)域和發(fā)展趨勢1.2Python由荷蘭數(shù)學(xué)和計算機科學(xué)研究學(xué)會的GuidovanRossum(吉多·范羅蘇姆)于1990年代初設(shè)計,作為一門叫做ABC語言的替代品。1989年圣誕節(jié)期間,在阿姆斯特丹,Guido為了打發(fā)圣誕節(jié)的無趣,決心開發(fā)一個新的腳本解釋程序,作為ABC語言的一種繼承。1.2.1Python的起源與發(fā)展1.2.1Python的起源與發(fā)展2000年10月,Python2.0發(fā)布,Python從基于maillist的開發(fā)方式轉(zhuǎn)為完全開源的開發(fā)方式。2008年12月,Python3.0版本發(fā)布,并被作為Python語言持續(xù)維護的主要系列。2012年P(guān)ython3.3版本發(fā)布,2014年P(guān)ython3.4版本發(fā)布,2015年P(guān)ython3.5版本發(fā)布,2016年P(guān)ython3.6版本發(fā)布,2018年6月27日Python3.7.0發(fā)布,2019年10月14日Python3.8.0發(fā)布2010年,Python2.x系列發(fā)布了最后一個版本,其主版本號為2.7,同時,Python的維護者們聲稱不在2.x系列中繼續(xù)對主版本號升級,Python2.x系列慢慢退出歷史舞臺。目前Python的最新版本為2024年12月3日發(fā)布的3.13.1。Guido于1989年定下目標之后便投身于Python語言的設(shè)計之中,但Python的第一個公開版本直到1991年才發(fā)行,此版本使用C語言實現(xiàn),能調(diào)用C語言的庫文件。簡單易學(xué)。Python是一門解釋型的編程語言,遵循“優(yōu)雅”、“明確”、“簡單”的設(shè)計哲學(xué),語法簡單,易學(xué)、易讀、易維護。功能強大。既屬于腳本語言,也屬于高級程序設(shè)計語言??梢浦?。Python語言編寫的程序可以不加修改地在任何平臺中運行。面向?qū)ο缶幊?。既支持面向過程的編程也支持面向?qū)ο蟮木幊?。開源。Python是自由/開放源碼軟件之一,用戶可以自由地下載、拷貝、閱讀、修改代碼。1.2.2Python的特點Python優(yōu)點1.2.3Python的應(yīng)用領(lǐng)域與發(fā)展趨勢Python作為一種高級通用語言,得到了廣泛應(yīng)用,業(yè)內(nèi)幾乎所有的大中型互聯(lián)網(wǎng)企業(yè)都在使用。數(shù)據(jù)分析操作系統(tǒng)管理文本處理Web編程應(yīng)用圖形用戶界面(GUI)開發(fā)網(wǎng)絡(luò)爬蟲Python與PyCharm安裝配置Python語言的解釋器Python3.9.0的下載與安裝Python開發(fā)環(huán)境IDLE及其使用Python集成開發(fā)環(huán)境PyCharm的安裝與配置1.31.3.1Python語言的解釋器Python2和Python3規(guī)定相應(yīng)版本Python的語法規(guī)則。

實現(xiàn)Python語法的解釋程序就是Python的解釋器。常用的的Python解釋器如下:(1)CPython。使用C語言實現(xiàn)的Python,即原始的Python實現(xiàn)。這是最常用的Python版本,也稱之為ClassicPython。通常Python就是指CPython,需要區(qū)別的時候才使用CPython。(2)Jython。使用Java語言實現(xiàn)的Python,原名JPython。Jython可以直接調(diào)用Java的類庫,適用于Java平臺的開發(fā)。(3)IronPython。面向.NET的Python實現(xiàn)。IronPython能夠直接調(diào)用.NET平臺的類,適用于.NET平臺的開發(fā)。(4)PyPy。使用Python語言實現(xiàn)的Python。1.3.2Python3.9.0的下載與安裝Python解釋器有多個版本,考慮到主要的Python標準庫更新只針對3.x系列,且當下企業(yè)也正從Python2.x向3.x過渡,因此對于初學(xué)Python的讀者而言,Python3.x無疑是明智的選擇。本書使用的是Python3.9.0版本。1.首先到Python官網(wǎng)的下載頁面:/downloads/1.3.2Python3.9.0的下載與安裝1.3.2Python3.9.0的下載與安裝2.進入Windows版本軟件下載頁面,根據(jù)操作系統(tǒng)版本選擇相應(yīng)軟件包。本教材使用的是Windows764位操作系統(tǒng),此處選擇3.9.0版本、.exe格式的安裝包。1.3.2Python3.9.0的下載與安裝3.勾選“AddPython3.9toPATH”,選擇“Customizeinstallation”自定義安裝項。1.3.2Python3.9.0的下載與安裝4.進入選項功能界面,更改Python軟件安裝的路徑為“D:\python”,單擊“Install”按鈕,開始安裝。1.3.2Python3.9.0的下載與安裝5.安裝成功。1.3.3Python開發(fā)環(huán)境IDLE及其使用什么是IDLE?1.3.3Python開發(fā)環(huán)境IDLE及其使用安裝Python后會自動安裝IDLE(Python自帶的集成開發(fā)環(huán)境),該軟件包含文本處理程序,用于書寫和修改Python代碼。在Windows系統(tǒng)的“開始”菜單中選擇Python3.9下的IDLE(Python3.964-bit)選項就可以啟動IDLE。1.3.3Python開發(fā)環(huán)境IDLE及其使用交互式:Shell界面中直接編寫Python代碼在“>>>”提示符后輸人一條語句,按Enter鍵后會立刻執(zhí)行。例如,使用print()函數(shù)輸出“鍵盤敲爛,月薪過萬!”。1.3.3Python開發(fā)環(huán)境IDLE及其使用文件式:將Python程序編寫并保存在一個或者多個源代碼文件中需要先創(chuàng)建Python源文件,然后保存程序文件后進行運行。具體操作為在菜單欄中選擇Run->RunMoudule命令或者按快捷鍵【F5】來運行程序。例如,在程序文件中使用print()函數(shù)輸出“鍵盤敲爛,月薪過萬!”。書寫代碼時需要注意以下5點:

在Shell窗口中,所有語句都必須在命令提示符“>>>”后輸入,按Enter鍵執(zhí)行。

語句中的所有符號都必須是半角字符(在英文輸入法下輸入的字符),需要特別注意括號、引號、逗號等符號的格式。Python用代碼縮進和冒號“:”區(qū)分代碼之間的層次。用相同的縮進表示同一級別的語句塊,不正確的縮進會導(dǎo)致程序邏輯錯誤。Python在表示縮進時可以使用Tab鍵或空格,但不要將兩者混合使用。一般以4個空格作為基本縮進單位。

對關(guān)鍵代碼可以添加必要的注釋。1.3.3Python開發(fā)環(huán)境IDLE及其使用書寫格式1.3.3Python開發(fā)環(huán)境IDLE及其使用注釋的分類多行注釋:以三對引號引起來("""解釋說明""")來解釋說明一段代碼的作用和使用方法。單行注釋:以#開頭,#右邊的所有文字當作說明,而不是真正要執(zhí)行的程序,起輔助說明作用。1.3.4Python集成開發(fā)環(huán)境PyCharm的安裝與配置PyCharm簡介PyCharm是Jetbrain公司開發(fā)的一款Python集成開發(fā)環(huán)境,由于其具有智能代碼編輯器、智能提示、自動導(dǎo)入等功能,因而已經(jīng)成為Python專業(yè)開發(fā)人員和初學(xué)者經(jīng)常使用的Python開發(fā)工具。1.1.3.4Python集成開發(fā)環(huán)境PyCharm的安裝與配置PyCharm的安裝2.訪問PyCharm官方網(wǎng)址/pycharm/,進入PyCharm的下載頁面。1.3.4Python集成開發(fā)環(huán)境PyCharm的安裝與配置PyCharm的安裝2.Professional版本特點提供PythonIDE的所有功能,支持Web開發(fā)。支持JavaScript、CoffeeScriptTypeScript、CSS和Cython等。支持遠程開發(fā)、Python分析器、數(shù)據(jù)庫和SQL語句。PyCharm的兩個版本是Professional和Community。Community版本特點輕量級的PythonIDE,只支持Python開發(fā)。免費、開源、集成Apache2的許可證。智能編輯器、調(diào)試器、支持重構(gòu)和錯誤檢查,集成VCS版本控制。1.3.4Python集成開發(fā)環(huán)境PyCharm的安裝與配置PyCharm的安裝2.雙擊安裝包(PyCharmCommunityEdition2021.2.3.exe),打開PyCharm軟件安裝界面。1.3.4Python集成開發(fā)環(huán)境PyCharm的安裝與配置PyCharm的安裝2.單擊【Next>】按鈕進入“ChooseInstallLocation”界面,可在此界面設(shè)置PyCharm的安裝路徑。此處使用默認路徑。1.3.4Python集成開發(fā)環(huán)境PyCharm的安裝與配置PyCharm的安裝2.單擊【Next>】按鈕進入“InstallationOptions”界面,在該界面可配置PyCharm的選項。1.3.4Python集成開發(fā)環(huán)境PyCharm的安裝與配置PyCharm的安裝2.勾選前圖所示界面中的所有選項,單擊【Next>】按鈕進入“ChooseStartMenuFolder”界面。1.3.4Python集成開發(fā)環(huán)境PyCharm的安裝與配置PyCharm的安裝2.單擊上圖中的【Install】按鈕安裝PyCharm。1.3.4Python集成開發(fā)環(huán)境PyCharm的安裝與配置PyCharm的安裝2.進入程序安裝完成界面,單擊【Finish】按鈕,完成PyCharm的安裝,并詢問重啟方式。1.3.4Python集成開發(fā)環(huán)境PyCharm的安裝與配置PyCharm的簡單設(shè)置3.更換主題修改源代碼字體大小修改編碼設(shè)置選擇解釋器設(shè)置1.3.4Python集成開發(fā)環(huán)境PyCharm的安裝與配置PyCharm的使用4.啟動PyCharm:雙擊桌面上的PyCharm快捷啟動圖標,確認是否接受用戶協(xié)議,選擇復(fù)選框,并繼續(xù)。1.3.4Python集成開發(fā)環(huán)境PyCharm的安裝與配置PyCharm的使用4.啟動PyCharm:

點擊【Continue】按鈕,進入PyCharm啟動界面。1.3.4Python集成開發(fā)環(huán)境PyCharm的安裝與配置PyCharm的使用4.新建項目:打開PyCharm軟件,選擇“File→New→Project”1.3.4Python集成開發(fā)環(huán)境PyCharm的安裝與配置PyCharm的使用4.單擊【Create】按鈕。彈【打開項目】對話框。選擇“Thiswindow”選項,進入【創(chuàng)建項目】界面。1.3.4Python集成開發(fā)環(huán)境PyCharm的安裝與配置PyCharm的使用4.進入項目管理界面。1.3.4Python集成開發(fā)環(huán)境PyCharm的安裝與配置PyCharm的使用4.新建Python文件:右鍵單擊項目名稱,選擇“New→PythonFile”,彈出【創(chuàng)建Python文件】對話框1.3.4Python集成開發(fā)環(huán)境PyCharm的安裝與配置PyCharm的使用4.編寫和運行Python程序:在右邊的代碼編輯區(qū)中輸出—行Python代碼:print(“HelloPython!”)計算機程序又稱“計算機軟件”,是指為了得到某種結(jié)果而可以由計算機等具有信息處理能力的裝置執(zhí)行的代碼化指令序列。計算機編程語言經(jīng)歷了三個發(fā)展階段:機器語言、匯編語言、高級語言。計算機編程語言由源程序轉(zhuǎn)換為機器語言有編譯和解釋兩種方式,其中Python屬于解釋方式。Python由GuidovanRossum(吉多·范羅蘇姆)于1990年設(shè)計,秉承“優(yōu)雅”“明確”“簡單”的設(shè)計理念。Python可以應(yīng)用于如人工智能、數(shù)據(jù)分析、網(wǎng)絡(luò)爬蟲、金融量化、云計算、Web開發(fā)、自動化運維和測試、游戲開發(fā)、網(wǎng)絡(luò)服務(wù)、圖像處理等眾多領(lǐng)域。IDLE是Python官方提供的集成開發(fā)環(huán)境,有兩種使用方式。在Shell窗口中可以直接輸入并執(zhí)行Python指令,進行交互式編程;使用文件編輯方式則是先編寫并保存代碼,以后可以多次執(zhí)行文件中的代碼程序。PyCharm是由JetBrains公司開發(fā)的一款Python的IDE軟件,具備調(diào)試、語法高亮、Project管理、代碼跳轉(zhuǎn)、智能提示、自動完成、單元測試和版本控制等功能。Python語言有哪些特點,應(yīng)用領(lǐng)域都有哪些?簡述

Python程序的運行過程。簡述程序的編譯方式和解釋方式的區(qū)別。如何在IDLE中運行和調(diào)試Python程序?5.利用IDLE和PyCharm編程環(huán)境,輸出如下信息。鮮食美美超市購物清單******************************單號:DH20220901日期:2022-09-0108:00:00******************************名稱數(shù)量(斤)單價金額蘋果3618香蕉2510葡萄3721******************************總數(shù):8總額:49折后總額:49實收:50找零:1收銀:管理員ThankYou!第2章Python語法基礎(chǔ)編碼規(guī)范基礎(chǔ)數(shù)據(jù)類型變量和賦值數(shù)據(jù)類型基本輸入和輸出運算符和表達式編碼規(guī)范保留字和標識符變量和賦值數(shù)據(jù)類型基本輸入和輸出運算符和表達式熟悉Python編程語言的基本語法和結(jié)構(gòu)掌握變量、數(shù)據(jù)類型、運算符和表達式的使用掌握基本輸入輸出的參數(shù)和使用注意事項培養(yǎng)良好的編碼習慣編碼規(guī)范

縮進注釋語句換行2.12.1編碼規(guī)范代碼格式可提升代碼的可讀性,與其他語言不同,Python代碼的格式是Python語法的組成之一,不符合格式規(guī)范的Python代碼無法正常運行。編碼規(guī)范2.1編碼規(guī)范Python最具特色的就是使用縮進來表示代碼塊。縮進的空格數(shù)是可變的(一般為4個空格),但是同一個代碼塊的語句必須包含相同的縮進空格數(shù)。Python3不允許混合使用Tab和空格。ifTrue:print("True")else:print("False”)print("False”)ifTrue:print("True")else:print("False")

print(”False”)縮進2.1編碼規(guī)范Python代碼中有兩種常用的注釋形式,即”#”和三引號?!?”用于單行注釋,表示本行中“#”后的內(nèi)容不作為代碼運行;三引號常用于大段說明性的文本注釋。注釋#第一個注釋print(”Hello,Python!”)

#第二個注釋"""print(value,...,sep='',end='\n',file=sys.stdout,flush=False)

"""2.1編碼規(guī)范在編寫代碼時盡量不要使用過長的語句,如果語句確實太長,Python允許在行尾使用續(xù)行符“\”表示下一行代碼仍屬于本條語句,或者使用圓括號把多行代碼括起來表示是一條語句。語句換行string=("Python是一種面向?qū)ο蟆⒔忉屝陀嬎銠C程序設(shè)計語言," "由GuidovanRossum于1989年底發(fā)明。" "第一個公開發(fā)行版發(fā)行于1991年," "Python源代碼同樣遵循GPL(GNUGeneralPublicLicense)協(xié)議。")保留字和標識符

保留字標識符2.22.2.1保留字保留字(keyword),也稱關(guān)鍵字,指被編程語言內(nèi)部定義并保留使用的標識符。保留字是Python語言中已經(jīng)被賦予特定意義的一些單詞,在開發(fā)程序時,不可以把這些保留字作為變量、函數(shù)、類、模塊和其他對象的名稱來使用。保留字False awaitelse

import

pass

Nonebreakexcept

in raise

True

classfinally

is return

and

continueforlambdatry

as def

from

nonlocalwhile

assert del global

not withasync elif

if oryield2.2.1保留字Python中的保留字可以通過“keyword.kwlist”代碼查看。importkeywordprint(keyword.kwlist)運行結(jié)果:['False','None','True','and','as','assert','break','class','continue','def','del','elif','else','except','finally','for','from','global','if','import','in','is','lambda','nonlocal','not','or','pass','raise','return','try','while','with','yield']2.2.2標識符現(xiàn)實生活中,每種事物都有自己的名稱,從而與其他事物區(qū)分開。例如,每種交通工具都用一個名稱來標識。2.2.2標識符在Python語言中,同樣也需要通過對程序中各個元素命名來加以區(qū)分,這種用來標識變量、函數(shù)、類等元素的符號稱為標識符,通俗地講就是名字。命名規(guī)則標示符由字母、下劃線和數(shù)字組成,且數(shù)字不能開頭。Python中的標識符是嚴格區(qū)分大小寫的。例如,Sum和sum是兩個不同的標識符。Python中的標識符禁止使用保留字或(關(guān)鍵字)。Python中以下劃線開頭的標識符有特殊意義,一般應(yīng)避免使用相似的標識符。2.2.2標識符見名知意。常量名使用大寫的單個單詞或由下畫線連接的多個單詞。模塊名、函數(shù)名使用小寫的單個單詞或由下畫線連接的多個單詞。類名使用大寫字母開頭的單個或多個單詞。為了規(guī)范命名標識符,關(guān)于標識符的命名提以下建議:變量和賦值變量的定義變量的命名變量值的存儲2.32.3.1變量的定義在Python中,不需要先聲明變量名及其類型,直接賦值即可創(chuàng)建各種類型的變量。通過賦值方式創(chuàng)建,并通過變量名標識。變量名=值變量創(chuàng)建時不需要聲明數(shù)據(jù)類型的,變量的“類型”是所指的內(nèi)存中被賦值對象的類型。strname,age,score='初心',18,96.5print(strname,age,score)運行結(jié)果:初心1896.5strname="初心"#字符串類型age=18#整數(shù)類型score=96.5 #浮點數(shù)類型變量名必須是一個有效的標識符。變量名不能使用Python中的保留字。慎用小寫字母i和大寫字母O。變量名稱應(yīng)見名知意。2.3.2變量的命名命名規(guī)則2.3.3變量的存儲Python語言中的變量存儲的是其值在內(nèi)存中的地址。標識用于唯一地表示一個對象,通常對應(yīng)對象在計算機內(nèi)存中的位置,換句話說變量是存放變量位置的標識符。fruit_01=”蘋果”2.3.3變量的存儲變量fruit_01賦值“蘋果”,變量fruit_02賦值“香蕉”,代碼如下:fruit_01=”蘋果”fruit_02=”香蕉”2.3.3變量的存儲變量fruit_01賦值“蘋果”,變量fruit_02的值等于fruit_01,代碼如下:fruit_01=”蘋果”fruit_02=fruit_01Python是一種動態(tài)類型的語言,也就是說,變量的類型可以隨時變化。數(shù)據(jù)類型

常見的數(shù)據(jù)類型數(shù)據(jù)類型的判斷方法數(shù)據(jù)類型的轉(zhuǎn)換2.42.4.1常見的數(shù)據(jù)類型Python3中有6種標準的數(shù)據(jù)類型:Number(數(shù)字)、String(字符串)、List(列表)、Tuple(元組)、Set(集合)和Dictionary(字典)。其中,不可變數(shù)據(jù)類型有Number、String、Tuple;可變數(shù)據(jù)類型List、Dictionary、Set。int整型:沒有大小限制,0101-239Float浮點型:3.14154.2E-10-2.334E-9;bool布爾型:True和False兩個取值,分別對應(yīng)的值為1和0,并且可以和數(shù)字相加;Complex復(fù)數(shù)類型:由實部和虛部兩部分構(gòu)成,用a+bj或complex(a,b)表示,3.12+1.2.3j

-1.23-93j2.4.1常見的數(shù)據(jù)類型數(shù)據(jù)類型Python3支持的數(shù)字類型有int(整數(shù))、float(浮點數(shù))、bool(布爾型)、complex(復(fù)數(shù))4種。2.4.1常見的數(shù)據(jù)類型例【2-5】根據(jù)身高、體重計算BMI指數(shù)。定義兩個變量:一個用于記錄身高(單位:米),另一個用于記錄體重(單位:千克),根據(jù)公式“BMI=體重/(身高X身高)”,計算BMI指數(shù)。height=1.80print("您的身高:",height)weight=75.5print("您的體重:",weight)bmi=weight/(height*height)print("您的BMI指數(shù)為:",bmi)

運行結(jié)果:您的身高:1.8您的體重:75.5您的BMI指數(shù)為:23.30246913580247使用單引號包含:'Python123¥'使用雙引號包含:"Python4*&%"使用三引號包含:'''Pythons1~(())'''2.4.1常見的數(shù)據(jù)類型字符串字符串用單引號(')、雙引號(")或三引號(''')作為定界符括起來,且必須配對使用,即字符串開始和結(jié)尾使用的引號形式必須一致。2.4.1常見的數(shù)據(jù)類型字符串當Python字符串中有一個反斜杠時,表示一個轉(zhuǎn)義序列的開始,稱反斜杠為轉(zhuǎn)義符。所謂轉(zhuǎn)義字符,是指那些字符串中存在的有特殊含義的字符。轉(zhuǎn)義字符說明\n換行\(zhòng)\反斜杠\''雙引號\t制表符2.4.1常見的數(shù)據(jù)類型例【2-6】字符串定界符的使用。mot_title="我喜歡的一句名言:"mot_cn='生活就像一盒巧克力,你永遠都不知道你會得到什么'mot_en='''Life'slikeabarofchocolate.You'llneverknowwhatyouaregonnaget.'''print(mot_title)print(mot_cn)print(mot_en)運行結(jié)果:我喜歡的一句名言:生活就像一盒巧克力,你永遠都不知道你會得到什么Life'slikeabarofchocolate.You'llneverknowwhatyouaregonnaget.2.4.1常見的數(shù)據(jù)類型列表、元組、字典、集合和字符串都是Python中常用的序列數(shù)據(jù)結(jié)構(gòu),很多復(fù)雜的程序設(shè)計都要使用這些數(shù)據(jù)結(jié)構(gòu)。不同的序列對象使用不同的定界符或元素形式表示有序的序列結(jié)構(gòu)支持索引訪問;序列結(jié)構(gòu)可變,表示其元素是可以修改的。2.4.2數(shù)據(jù)類型的判斷方法Python采用基于值的內(nèi)存管理模式,隨著變量值的改變,變量的數(shù)據(jù)類型也可以動態(tài)改變,Python解釋器會根據(jù)賦值結(jié)果自動推斷變量類型。判斷對象的類型可使用type或isinstance方法。str_1='初心'type(str_1)isinstance(str_1,str)isinstance(str_1,int)isinstance(str_1,(int,str))#str_1類型是元組(int,str)中的某一個就返回True

運行結(jié)果:<class'str'>TrueFalseTrue2.4.3數(shù)據(jù)類型轉(zhuǎn)換Python是強類型語言。當一個變量被賦值為一個對象后,這個對象的類型就固定了,不能隱式轉(zhuǎn)換成另一種類型。當運算需要時,必須使用顯式的變量類型轉(zhuǎn)換。函數(shù)說明float()將其他類型數(shù)據(jù)轉(zhuǎn)換為浮點數(shù)str()將其他類型數(shù)據(jù)轉(zhuǎn)換為字符串int()將其他類型數(shù)據(jù)轉(zhuǎn)換為整型round()將浮點型數(shù)值圓整為整型bool()將其他類型數(shù)據(jù)轉(zhuǎn)換為布爾類型chr()和ord()chr()將一個整數(shù)按ASCII碼轉(zhuǎn)換為對應(yīng)的字符,ord()是chr()的逆運算,把字符轉(zhuǎn)換成對應(yīng)的ASCII碼或Unicode值eval()將字符串中的數(shù)據(jù)轉(zhuǎn)換成Python表達式原本類型2.4.3數(shù)據(jù)類型轉(zhuǎn)換例【2-9】模擬超市抹零結(jié)賬行為。要求:先將各個商品金額累加,計算出商品總金額,并轉(zhuǎn)換為字符串輸出,然后再應(yīng)用int()函數(shù)將浮點型的變量轉(zhuǎn)換為整型,從而實現(xiàn)抹零,并轉(zhuǎn)換為字符串輸出。money_total=23.2+7.9+8.7+32.65money_total_str=str(money_total)print("商品總額為:"+money_total_str)money_real=int(money_total)#舍去小數(shù)部分money_real_str=str(money_real)print("實收金額為:"+money_real_str)運行結(jié)果:商品總額為:72.44999999999999實收金額為:72基本輸入和輸出

input()函數(shù)print()函數(shù)字符串的格式化輸出2.52.5.1input()輸入函數(shù)輸入語句可以在程序運行時從輸入設(shè)備獲得數(shù)據(jù)。標準輸入設(shè)備就是鍵盤。在Python中可以通過input()函數(shù)取鍵盤輸入數(shù)據(jù)。一般格式為:變量=input(<提示字符串>)特點當程序執(zhí)行到input,等待用戶輸入,輸入完成之后才繼續(xù)向下執(zhí)行。input接收用戶輸入后,一般存儲到變量中,方便使用。input會把接收到的任意用戶輸入的數(shù)據(jù)都當作字符串處理。2.5.1input()輸入函數(shù)例【2-10】根據(jù)輸入的年份,計算年齡大小。實現(xiàn)根據(jù)輸入的年份(4位數(shù)字,如1981),計算目前的年齡,程序中使用input()函數(shù)輸入年份,使用datetime模塊獲取當前年份,然后用獲取的年份減去輸入的年份,就是計算的年齡。importdatetimebirthyear=input("請輸入您的出生年份:")nowyear=datetime.datetime.now().yearage=nowyear-int(birthyear)print("您的年齡為:"+str(age)+"歲")運行結(jié)果:請輸入您的出生年份:1978您的年齡為:44歲運行程序,提示輸入出生年份,輸入出生年份,出生年份必須是4位,如輸入1978,按Enter鍵。2.5.2print()輸出函數(shù)在Python中,使用內(nèi)置的print()函數(shù)可以將結(jié)果輸出到IDLE或者標準控制臺上。print()函數(shù)的基本語法為:print(<輸出值1>[,<輸出值項2>,…,<輸出值n>,sep=',',end='\n'])通過print()函數(shù)可以將多個輸出值轉(zhuǎn)換為字符串并且輸出,這些值之間以sep分隔,最后以end結(jié)束。sep默認為空格,end默認為換行。print('abc',123)print('abc',123,sep=',')運行結(jié)果:abc123abc,1232.5.3字符串的格式化輸出字符串格式化是指字符串本身通過特定的占位符確定位置信息,然后按照特定的格式將變量對象傳入對應(yīng)位置,形成新的字符串。使用“%”格式化字符串使用str.format()格式化字符串使用f-strings格式化字符串字符串格式化方法2.5.3字符串的格式化輸出通過format%values的形式傳值,其中format是包含%規(guī)則的字符串,values是要傳入的值,傳值可通過位置、字典等方式實現(xiàn)。使用“%”格式化字符串函數(shù)說明輔助功能%s格式化字符串*:定義寬度或小數(shù)位精度-:左對齊0:在數(shù)字前面填充o而非空格m.n:m是最小總位數(shù),n是小數(shù)點后的位數(shù)%d格式化整數(shù)%f格式化浮點數(shù)字,可指定小數(shù)點后的精度%%格式化為百分號2.5.3字符串的格式化輸出使用“%”格式化字符串strname,age,score='初心',18,96.5print('%s同學(xué)的年齡為%d,Python成績?yōu)椋?.1f'%(strname,age,score))運行結(jié)果:初心同學(xué)的年齡為18,Python成績?yōu)椋?6.5上述print()函數(shù)使用了格式化字符串,strname,age和score三個參數(shù)分別與“%s”、“%d”、“%f”相對應(yīng),即strname被格式化為字符串,age被格式化為整數(shù),score被格式化為一位小數(shù)的浮點數(shù)。2.5.3字符串的格式化輸出通過str.format(values)的方法格式化,其中str是帶有{}規(guī)則的字符串,values是要傳入的值。使用format方法格式化的規(guī)則與%相同。使用str.format()格式化字符串strname,age,score='初心',18,96.5print('大括號方式:{}同學(xué)的年齡為{},Python成績?yōu)椋簕}'.format(strname,age,score))print('大括號+編號方式:{0}同學(xué)的年齡為{1},Python成績?yōu)椋簕2}'.format(strname,age,score))print('大括號+關(guān)鍵字方式:{a}同學(xué)的年齡為,Python成績?yōu)椋簕c}'.format(a=strname,b=age,c=score))運行結(jié)果:大括號方式:初心同學(xué)的年齡為18,Python成績?yōu)椋?6.5大括號+編號方式:初心同學(xué)的年齡為18,Python成績?yōu)椋?6.5大括號+關(guān)鍵字方式:初心同學(xué)的年齡為18,Python成績?yōu)椋?6.52.5.3字符串的格式化輸出format方法提供了更強大的格式輸出功能,在大括號內(nèi)的數(shù)字面,可以加詳細的格式定義。數(shù)字編號和格式定義之間用英文冒號“:”分隔,格式定義形式為:[對齊說明符][符號說明符][最小寬度][.精度][格式符]使用str.format()格式化字符串a(chǎn)ge=18print('{0:<10.2f}\n'.format(age))print('{0:>10.2f}\n'.format(age))print('{0:^10.2f}\n'.format(age))運行結(jié)果:18.0018.0018.002.5.3字符串的格式化輸出使用str.format()格式化字符串符號描述對齊說明符<

左對齊,默認用空格填充右邊>

右對齊^中間對齊符號說明符+總是顯示符號,即數(shù)字的正負符號-負數(shù)顯示-空格若是正數(shù),前邊保留空格,負數(shù)顯示-對齊說明符和符號說明符及其含義2.5.3字符串的格式化輸出格式化的字符串常量(formattedstringliterals,f-strings)使用”f”或”F”作為前綴,表示格式化設(shè)置。需要注意的是:f-strings方式只能用于Python3.6及其以上版本,它與format方法類似,但形式更加簡潔。使用f-strings格式化字符串print('age={0},y={1:.1f}'.format(age,score))可以表示為print(f'age={age},score={score:.1f}')運行結(jié)果:age=18,score=96.5運算符和表達式

運算符表達式2.6Python是面向?qū)ο蟮木幊陶Z言,對象由數(shù)據(jù)和行為組成,運算符是表示對象行為的一種形式。Python支持算術(shù)運算符、關(guān)系運算符、邏輯運算符以及位運算符,還支持特有的運算符,如成員測試運算符、集合運算符、同一性測試運算符等。2.6.1運算符2.6.1運算符Python中的算術(shù)運算符包括+、-、*、/、//、%和**。Python中的算術(shù)運算符既支持對相同類型的數(shù)值進行運算,也支持對不同類型的數(shù)值進行混合運算。在混合運算時,Python會強制將數(shù)值的類型進行臨時類型轉(zhuǎn)換,這些轉(zhuǎn)換遵循如下原則:算術(shù)運算符整型與浮點型進行混合運算時,將整型轉(zhuǎn)化為浮點型。其他類型與復(fù)數(shù)運算時,將其他類型轉(zhuǎn)換為復(fù)數(shù)類型。2.6.1運算符比較運算符,也稱為關(guān)系運算符,用于對變量或表達式的結(jié)果進行大小、真假等比較,如果比較結(jié)果為真,則返回True;如果為假,則返回False。Python中的比較運算符包括==、!=、>、<、>=、<=。以變量x=10,y=30為例,具體如下:比較運算符運算符功能說明示例==比較兩個數(shù)的值是否相等,如果相等返回Truex==y,返回False!=比較兩個數(shù)的值是否相等,如果不相等返回Truex!=y,返回True>比較左操作數(shù)是否大于右操作數(shù),如果大于返回Truex>y,返回False<比較左操作數(shù)是否小于右操作數(shù),如果小于返回Truex<y,返回True>=比較左操作數(shù)是否大于等于右操作數(shù),如果大于等于返回Truex>=y,返回False<=比較左操作數(shù)是否小于等于右操作數(shù),如果小于等于返回Truex<=y,返回True2.6.1運算符邏輯運算符是對真和假兩種布爾值進行運算。邏輯運算符的運算結(jié)果為布爾值(True,F(xiàn)alse)。Python中分別使用”or”,”and”,”not”這三個關(guān)鍵字作為邏輯運算符,以x=1,y=2為例,具體如下:邏輯運算符運算符邏輯表達式功能說明示例andxandy若兩個操作數(shù)的布爾值均為True,則結(jié)果為yxandy的結(jié)果為yorxory若兩個操作數(shù)的布爾值均為True,則結(jié)果為xxory的結(jié)果為xnotnotx若操作數(shù)x的布爾值均為True,則結(jié)果為xnotx的結(jié)果為False2.6.1運算符成員運算符in和notin用于測試給定數(shù)據(jù)是否存在于序列(如列表、字符串)中,關(guān)于它們的介紹如下:成員運算符in:如果指定元素在序列中返回True,否則返回False。notin:如果指定元素不在序列中返回True,否則返回False。2.6.1運算符5種運算符及其描述。運算符優(yōu)先級運算符功能+、-、*、/、%、//、**算術(shù)運算:加、減、乘、除、取模、整除、冪=、+=、*=賦值運算符和復(fù)合賦值運算符<、<=、>、>=、!=、==關(guān)系運算:小于、小于等于、大于、大于等于、不等于、等于and、or、not邏輯運算:邏輯與、邏輯或、邏輯非&、|、^、~、<<、>>位運算:位與、位或、位異或、取反、左移位、右移位is、isnot對象同一性測試符in、notin成員測試運算符各類運算符之間的優(yōu)先級順序為:邏輯運算符<關(guān)系運算符<算術(shù)運算符。如1+4>7+2and5+8>3+6計算次序依次是算術(shù)運算、關(guān)系運算、邏輯運算。

表達式是使用運算符將變量、常量、函數(shù)等運算對象按照一定的規(guī)則連接起來的式子,表達式經(jīng)過運算得到一個確定的值。例如,str_number01,str_number02=str_number02,str_number01#實現(xiàn)兩個數(shù)原地交換表達式中運算符優(yōu)先級的規(guī)則為:2.6.2表達式

算術(shù)運算符的優(yōu)先級最高,其次是位運算符、成員測試運算符、關(guān)系運算符、邏輯運算符等。

為了避免優(yōu)先級錯誤,最好使用圓括號明確表達式的優(yōu)先級,同時也能提高代碼的可讀性。2.6.2表達式例【2-15】計算學(xué)生三門計算機類課的成績平均分。要求:某同學(xué)有3門課程成績分別為:數(shù)據(jù)庫原理:89,Python程序設(shè)計:96,Web技術(shù):90。編程實現(xiàn)三門課程的平均分,并保留一位小數(shù)。database_grade=89python_grade=96web_grade=90avg=(database_grade+python_grade+web_grade)/3print("三門計算機類課程平均成績?yōu)椋?+str(round(avg,1))+"分")運行結(jié)果:三門計算機類課程平均成績?yōu)椋?1.7分綜合案例

求圓的面積和周長2.72.7綜合案例:求圓的面積和周長例【2-18】輸入圓的半徑,求圓的面積和周長,并用兩種方式輸出圓的面積和周長(要求:保留小數(shù)點后2位)。radiu=input("請輸入圓的半徑:")f_radiu=float(radiu)pi=3.14area=pi*f_radiu*f_radiucircumference=2*pi*f_radiuprint("方式一:半徑為"+format(f_radiu)+",圓面積是"+format(area,".2f")+",周長是"+format(circumference,".2f")+"。")print(f"方式二:半徑為{f_radiu},圓的面積是{area:.2f},周長是{circumference:.2f}。")print(f"方式二:半徑為{f_radiu},圓的面積是{round(area,2)},周長是{round(circumference,2):.2f}。")運行結(jié)果:請輸入圓的半徑:2.5方式一:半徑為2.5,圓面積是19.62,周長是15.70。方式二:半徑為2.5,圓的面積是19.62,周長是15.70。方式二:半徑為2.5,圓的面積是19.62,周長是15.70。在編寫代碼時,遵循一定的代碼編寫規(guī)則和命名規(guī)范可以使代碼更加規(guī)范化,并對代碼的理解與維護起到至關(guān)重要的作用。Python中采用PEP8作為編碼規(guī)范。變量名可以包括字母、下畫線或者數(shù)字,但不能以數(shù)字開頭,也不能用Python的關(guān)鍵字、標識符等作為變量名。變量是計算機編程中的一個語法重要概念,它用來保存程序執(zhí)行過程中的各種信息,并通過變量名訪問變量。Python是一種動態(tài)類型的語言,變量的值可以改變,數(shù)據(jù)類型也可以動態(tài)改變。數(shù)據(jù)類型用來定義數(shù)據(jù)的類別以及可以進行的操作。Python支持的基本數(shù)據(jù)類型包括數(shù)字、字符串、列表、元組、字典和集合等。不同類型的對象可以存儲不同形式的數(shù)據(jù),支持不同的操作。Python中使用input()函數(shù)接收鍵盤的輸入,使用print()函數(shù)輸出信息。input()函數(shù)接收的輸入都作為字符串??梢愿鶕?jù)需要運用類型轉(zhuǎn)換函數(shù)進行類型轉(zhuǎn)換,將字符串類型轉(zhuǎn)換為int等類型。print()函數(shù)可以輸出格式化的字符串。Python支持算術(shù)運算符、關(guān)系運算符、邏輯運算符以及位運算符,還支持成員測試運算符、集合運算符、同一性測試運算符等特殊運算符。運算符對于不同數(shù)據(jù)類型的對象具有不同的含義。使用圓括號可以改變表達式的優(yōu)先級。什么是標識符?簡述Python標識符的命名規(guī)則。什么是關(guān)鍵字?True和False是否是Python的關(guān)鍵字?字符串的format()方法中,該方法的參數(shù)有哪幾種?4.編程實現(xiàn)鞋碼轉(zhuǎn)換。輸入一個舊鞋碼,計算并輸出新鞋碼。新鞋碼換算公式為:(舊鞋碼+10)÷2×10。例:舊鞋碼為38碼的鞋?對應(yīng)的新鞋碼是(38+10)÷2×10=240mm5.編程實現(xiàn)求長方體的體積。輸入三個表示長方體長寬?高a,b,c,均為整數(shù)。求出長方體的體積v,并將長方體的體積輸出。注意:長方體的體積計算公式為v=a*b*c,長方體的體積為整數(shù)。6.編程實現(xiàn)從鍵盤輸入圓的半徑,求圓的面積,并格式化輸出結(jié)果,保留2位小數(shù)。7.編程實現(xiàn)模擬水果店的打折活動,寫出判斷活動舉辦的條件判斷語句?;顒右?guī)則為:每周二的上午10點至11點和每周五的下午14點至15點,對某水果進行折扣讓利活動。8.某編程實現(xiàn)單位舉辦年終聯(lián)歡活動,符合條件的觀眾請舉手。在某單位舉辦年終聯(lián)歡活動主持人要求觀眾根據(jù)自己的年齡舉手,主持人希望找到符合以下條件的觀眾:(1)年齡在18-20歲之間的觀眾。(2)年齡是18歲或者28歲的觀眾ThankYou!第3章程序基本流程控制選擇結(jié)構(gòu)語句循環(huán)結(jié)構(gòu)語句break、continue和else語句pass語句程序的錯誤與異常處理選擇結(jié)構(gòu)循環(huán)結(jié)構(gòu)break、continue和else語句pass語句程序的錯誤與異常處理理解程序流程控制的概念和作用掌握if語句、if...else語句和多分支結(jié)構(gòu)的使用

掌握for循環(huán)和while循環(huán)結(jié)構(gòu)的使用理解循環(huán)控制語句break和continue掌握異常處理語句try..except語句、raise語句等能夠使用流程控制語句解決實際問題選擇結(jié)構(gòu)單分支結(jié)構(gòu)雙分支結(jié)構(gòu)多分支結(jié)構(gòu)嵌套分支結(jié)構(gòu)3.13.1選擇結(jié)構(gòu)選擇結(jié)構(gòu)又稱為分支結(jié)構(gòu),根據(jù)判斷條件表達式是否成立(True或False)決定下一步選擇執(zhí)行特定的代碼。語法格式:if條件表達式-1:

語句塊-1[elif條件表達式-2:

語句塊-2else:

語句塊-3]3.1.1單分支結(jié)構(gòu)選擇結(jié)構(gòu)又稱為分支結(jié)構(gòu),根據(jù)判斷條件表達式是否成立(True或False)決定下一步選擇執(zhí)行特定的代碼。語法格式:功能:單分支結(jié)構(gòu)中只有一個條件。if條件表達式:語句塊同一級別的語句塊的縮進量必須相同。注意3.1.1單分支結(jié)構(gòu)例【3-1】根據(jù)BMI指數(shù)判斷肥胖程度或健康程度。height=float(input("請輸入您的身高(單位為米):"))weight=float(input("請輸入您的體重(單位為千克):"))bmi=weight/(height*height)#用于計算BMI指數(shù),公式為“體重(kg)/身高的平方(m2)”print("您的BMI指數(shù)為:"+str(round(bmi,2)))#輸出BMI指數(shù)#判斷肥胖程度或健康程度ifbmi<18.5:print("您的體重過輕。")ifbmi>=18.5andbmi<24.9:print("正常范圍,注意保持。")ifbmi>=24.9andbmi<29.9:print("您的體重過重。")ifbmi>=29.9:print("肥胖!")運行結(jié)果:請輸入您的身高(單位為米):1.7請輸入您的體重(單位為千克):85您的BMI指數(shù)為:29.41您的體重過重。3.1.2雙分支結(jié)構(gòu)語法格式:功能:雙分支結(jié)構(gòu)可以表示兩個條件。如果條件表達式的值為True,則執(zhí)行語句塊1;否則執(zhí)行語句塊2。if條件表達式:

語句塊1else:

語句塊23.1.2雙分支結(jié)構(gòu)例【3-2】詢問你的年齡,如果年齡大于或等于18歲,輸出“恭喜!你成年了?!保绻∮?8歲,輸出“要年滿18歲才成年,你還差*歲。”。age=int(input("你的年齡是:"))ifage>=18:print("恭喜!你成年了。")else:diff=str(18-age)print("要年滿18歲才成年,你還差"+diff+"歲。")運行結(jié)果:第一種情況:你的年齡是:20恭喜!你成年了。第二種情況:你的年齡是:15要年滿18歲才成年,你還差3歲。3.1.3多分支結(jié)構(gòu)語法格式:如果程序需要處理多種情況,那么可以使用if-elif-else語句。if條件表達式1:if-語句塊1elif條件表達式2: elif-語句塊2elif條件表達式3: elif-語句塊3[else:else-語句塊4]3.1.3多分支結(jié)構(gòu)例【3-3】編寫程序,判斷工作年齡是否合法,中國合法工作年齡為18-60歲,即如果年齡小于18歲的情況為童工,不合法;如果年齡在18-60歲之間為合法工齡;大于60歲為法定退休年齡。age=int(input('請輸入您的年齡:'))ifage<18:print(f'您的年齡是{age},童工一枚')elif(age>=18)and(age<=60):print(f'您的年齡是{age},合法工齡')elifage>60:print(f'您的年齡是{age},可以退休')運行結(jié)果:請輸入您的年齡:20您的年齡是20合法工齡3.1.4嵌套分支結(jié)構(gòu)語法格式:多分支結(jié)構(gòu)也可以使用嵌套分支結(jié)構(gòu)實現(xiàn),外層的if塊中嵌套了一個if-else結(jié)構(gòu),外層的else塊中嵌套了一個if結(jié)構(gòu)。if條件表達式1:

語句塊1if條件表達式:

語句塊2else:

語句塊3else:if條件表達式4:

語句塊43.1.4嵌套分支結(jié)構(gòu)例【3-4】判斷是否為酒后駕車。degree=int(input("請輸入每100毫升血液的酒精含量:"))ifdegree<20:print("您還不構(gòu)成飲酒駕駛行為,可以開車,但要注意安全。")else:ifdegree<80:print("已經(jīng)達到酒后駕駛標準,請不要開車。")else:print("已經(jīng)達到醉酒駕駛標準,千萬不要開車。")運行結(jié)果:請輸入每100毫升血液的酒精含量:25已經(jīng)達到酒后駕駛標準,請不要開車。國家質(zhì)量監(jiān)督檢驗檢疫局發(fā)布的《車輛駕駛?cè)藛T血液、呼氣酒精含量閾值與檢驗》中規(guī)定:車輛駕駛?cè)藛T血液中的酒精含量小于20mg/100ml不構(gòu)成飲酒駕駛行為;酒精含量大于或等于20mg/100m、小于80mg/100ml為飲酒駕車;酒精含量大于或等于80mg/100ml為醉酒駕車。循環(huán)結(jié)構(gòu)

while循環(huán)for循環(huán)循環(huán)嵌套3.23.2循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)是指滿足一定條件的情況下,重復(fù)執(zhí)行特定代碼塊的一種編碼結(jié)構(gòu)。其中,被重復(fù)執(zhí)行的代碼塊稱為循環(huán)體,判斷是否繼續(xù)執(zhí)行的條件稱為循環(huán)終止條件。Python中,常見的循環(huán)語句是while語句和for語句兩種格式。3.2.1while循環(huán)while語句當條件表達式的值為True時,執(zhí)行循環(huán)體,循環(huán)體中可以包含多條語句,這些語句都會被重復(fù)執(zhí)行,直到條件不滿足為止。語法格式:while條件表達式:

循環(huán)體

while語句中必須有改變循環(huán)條件的語句,否則會進入死循環(huán)。注意3.2.1while循環(huán)例【3-5】取款機輸入密碼模擬。password=0i=1whilei<7:num=input("請輸入一位數(shù)字密碼:")num=int(num)ifnum==password:print("密碼輸入正確,正進入系統(tǒng)!")i=7else:print("密碼輸入錯誤,您已經(jīng)輸錯",i,"次")i+=1ifi==7:print("您的卡將被鎖死,請與發(fā)卡行聯(lián)系!")運行結(jié)果:請輸入一位數(shù)字密碼:6密碼錯誤,已經(jīng)輸錯1次請輸入一位數(shù)字密碼:2密碼錯誤,已經(jīng)輸錯2次請輸入一位數(shù)字密碼:0密碼正確,正在進入系統(tǒng)!一般在取款機上取款時需要輸入6位銀行卡密碼,接下來我們模擬一個簡單的取款機(只有1位密碼),每次要求用戶輸入1位數(shù)字密碼,密碼正確輸出“密碼輸入正確,正進入系統(tǒng)!”:如果輸入錯誤,輸出“密碼輸入錯誤,您已經(jīng)輸錯*次”,密碼連續(xù)輸入錯誤6次后輸出“您的卡將被鎖死,請和發(fā)卡行聯(lián)系!”。3.2.2for循環(huán)for循環(huán)是一個依次重復(fù)執(zhí)行的循環(huán)。通常適用于枚舉或遍歷序列,以及迭代對象中的元素。for語句一般用于實現(xiàn)遍歷循環(huán)。語法格式:for迭代變量in序列或迭代對象:

循環(huán)體3.2.2for循環(huán)例【3-6】計算1+2+3+4+...+100的結(jié)果。print("計算1+2+3+4+...+100的結(jié)果為:")result=0foriinrange(1,101,1):result+=iprint(result)運行結(jié)果:計算1+2+3+4+...+100的結(jié)果為:50503.2.2for循環(huán)for循環(huán)常與range()函數(shù)搭配使用,以控制循環(huán)中代碼段的執(zhí)行次數(shù)。range()函數(shù)屬于Python內(nèi)置的函數(shù),返回一個可迭代對象。語法格式:range(start,end,step)start:計數(shù)從start開始。默認是從0開始。例如range(5)等價于range(0,5)stop:計數(shù)到stop結(jié)束,但不包括stop。例如:range(0,5)是[0,1,2,3,4]沒有5step:步長,默認為1。例如:range(0,5)等價于range(0,5,1)3.2.3嵌套循環(huán)在Python中,允許在一個循環(huán)體中嵌入另一個循環(huán),這稱為循環(huán)嵌套。for循環(huán)和while循環(huán)都可以進行循環(huán)嵌套。while條件表達式1:代碼塊1......while條件表達式2:代碼塊2 ......for臨時變量in可迭代對象:

代碼塊1for臨時變量in可迭代對象:

代碼塊2while循環(huán)嵌套語法格式for循環(huán)嵌套語法格式3.2.3嵌套循環(huán)例【3-7】九九乘法表。foriinrange(1,10):#輸出9行

forjinrange(1,i+1):#輸出與行數(shù)相等的列

print(str(j)+"×"+str(i)+"="+str(i*j)+"\t",end='')print('')#換行運行結(jié)果:1×1=1 1×2=22×2=4

1×3=32×3=63×3=9

1×4=42×4=83×4=124×4=16

1×5=52×5=103×5=154×5=205×5=25

1×6=62×6=123×6=184×6=245×6=306×6=36

1×7=72×7=143×7=214×7=285×7=356×7=427×7=49

1×8=82×8=163×8=244×8=325×8=406×8=487×8=568×8=64

1×9=92×9=183×9=274×9=365×9=456×9=547×9=638×9=729×9=813.2.3嵌套循環(huán)例【3-7】計算1-100偶數(shù)累加和。i=1result=0whilei<=100:ifi%2==0:result+=ii+=1print(result)運行結(jié)果:2550break、continue和else語句break語句continue語句else語句3.33.3.1break語句break語句用于結(jié)束循環(huán),break語句一般會結(jié)合if語句進行搭配使用,表示在某種條件下,跳出循環(huán)。如果使用嵌套循環(huán),若循環(huán)嵌套使用了break語句,程序執(zhí)行到break語句時會結(jié)束本層循環(huán)。while條件表達式:

代碼塊

if條件表達式:

代碼塊

breakfor臨時變量in可迭代對象:

執(zhí)行語句

if條件表達式:

代碼塊

breakwhile循環(huán)使用breakfor循環(huán)使用break3.3.1break語句例【3-9】輸入一個整數(shù),判斷是否為素數(shù)。number=int(input("請輸入整數(shù):"))#92~8ifnumber<2:print("不是素數(shù)")else:foriinrange(2,number):ifnumber%i==0:print("不是素數(shù)")break#如果有結(jié)論了,就不需要在和后面的數(shù)字比較了

else:print("是素數(shù)")運行結(jié)果:請輸入整數(shù):9不是素數(shù)素數(shù)是只能被1和自身整除的數(shù)字,例如9,判斷9能否被2~8之間的數(shù)字整除。如果能,說明不是素數(shù);如果都不能,說明是素數(shù)。3.3.2continue語句continue語句用于跳出當前循環(huán),繼續(xù)執(zhí)行下一次循環(huán)。該語句通常也與if語句配合使用。i=1whilei<=5:ifi==3:print(f'大蟲子,第{i}個不吃了')#在continue之前一定要修改計數(shù)器,否則會陷入死循環(huán)

i+=1continueprint(f'吃了第{i}個蘋果')i+=1運行結(jié)果:吃了第1個蘋果吃了第2個蘋果大蟲子,第3個吃不了吃了第4個蘋果吃了第5個蘋果3.3.2continue語句例【3-10】設(shè)計一個驗證用戶密碼程序,用戶只有三次機會輸入錯誤,不過如果用戶輸入的內(nèi)容中包含“*”則不計算在內(nèi)。count=3password='123'whilecount:passwd=input('請輸入密碼:')ifpasswd==password:print('密碼正確,進入程序......')breakelif'*'inpasswd:print('密碼中不能含有“*”號!您還有',count,'次機會!',end='')continueelse:print('密碼輸入錯誤!您還有',count-1,'次機會!',end='')count-=1運行結(jié)果:請輸入密碼:666密碼輸入錯誤!您還有2次機會!請輸入密碼:125密碼輸入錯誤!您還有1次機會!請輸入密碼:123密碼正確,進入程序......3.3.3else語句while語句和for語句的后邊還可以帶有else語句,用于處理循環(huán)結(jié)束后的“收尾”工作。語法格式:格式1:while條件表達式:

循環(huán)體else: else子句代碼塊格式2:for迭代變量in序列或迭代對象:

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論