Python程序开发——第一章 基本python语法
目錄
- 前言
- 一、PyCharm
- (一)創(chuàng)建工程文件夾
- (二)創(chuàng)建 python 文件并運(yùn)行
- 二、IDLE
- 三、Python中的注釋用法
- 四、變量的命名事項(xiàng)
- 五、基本輸入和輸出函數(shù)
- (一)輸入和輸出
- (二)多個(gè)輸入
- 六、數(shù)字類(lèi)型
- (一)整型
- (二)浮點(diǎn)型
- (三)復(fù)數(shù)
- (四)布爾類(lèi)型
- (五)常見(jiàn)的強(qiáng)制轉(zhuǎn)換函數(shù)
- 五、字符串
- (一)字符串的表示
- (二)格式化輸出
- 1、占位符
- 2、format()格式化函數(shù)
- 3、f-strings方式
- (三)字符串的操作和處理
- (四)字符串的索引和切片
- 1、字符串的索引
- 2、字符串的切片
- 六、數(shù)值運(yùn)算操作符
- 七、常用的數(shù)值運(yùn)算函數(shù)
- 八、邏輯運(yùn)算符
- 結(jié)語(yǔ)
前言
Python是一種解釋型、面向?qū)ο蟆?dòng)態(tài)數(shù)據(jù)類(lèi)型的高級(jí)程序設(shè)計(jì)語(yǔ)言,面向?qū)ο蟮谋举|(zhì)是建立模型以體現(xiàn)抽象思維過(guò)程和面向?qū)ο蟮姆椒?#xff0c;且它是一種可以跨平臺(tái)的編程語(yǔ)言,即可以在Windows,macOS,Linux等多種平臺(tái)上運(yùn)行。本系列是通過(guò)集成開(kāi)發(fā)環(huán)境PyCharm來(lái)進(jìn)行Python程序開(kāi)發(fā)的,以下有PyCharm的安裝和使用,當(dāng)然也可以通過(guò)Python IDLE,本章會(huì)簡(jiǎn)單介紹兩個(gè)軟件的使用方法。
一、PyCharm
在PyCharm官網(wǎng)網(wǎng)址下載PyCharm并安裝,以下是如何創(chuàng)建一個(gè)python文件并運(yùn)行:
(一)創(chuàng)建工程文件夾
打開(kāi)PyCharm,點(diǎn)擊右上角的文件——新建項(xiàng)目,其中藍(lán)框兩個(gè)位置要一致,紅框是選擇基本解釋器,如下圖:
設(shè)置好后,點(diǎn)擊創(chuàng)建:
在右上角可以看到創(chuàng)建的工程文件夾:
(二)創(chuàng)建 python 文件并運(yùn)行
在右上角的文件中,點(diǎn)擊新建或右鍵工程文件,選擇新建中的python文件,如下圖:
在以下彈出窗口,設(shè)置python文件的名稱(chēng)和選擇python文件:
這樣就創(chuàng)建了一個(gè)簡(jiǎn)單的Python文件,其文件名為123.py:
當(dāng)寫(xiě)好代碼后,右鍵點(diǎn)擊運(yùn)行:
運(yùn)行結(jié)果如下,運(yùn)行結(jié)果出現(xiàn)在下面框中:
二、IDLE
IDLE一般用于競(jìng)賽等方面,比如藍(lán)橋杯軟件類(lèi)的python組規(guī)定的軟件就是該軟件,如下:
編譯器:Python 3.8.X 編輯器:IDLE(Python 自帶編輯器)
IDLE的使用較為簡(jiǎn)單,首先點(diǎn)擊左上角的File——New File,創(chuàng)建一個(gè)新的python文件,直接在進(jìn)去的頁(yè)面寫(xiě)代碼是沒(méi)有用的!
寫(xiě)好代碼后,點(diǎn)擊Run——Run Module即可運(yùn)行,如下圖:
若覺(jué)得字體較小或其它設(shè)置,可在上方欄中的Options中設(shè)置,如下圖:
三、Python中的注釋用法
在Python語(yǔ)言中,注釋使用#和'''或"""來(lái)分別進(jìn)行單行注釋和多行注釋,其中多行注釋是以開(kāi)頭,且也是以結(jié)尾的。
例如下列python代碼:
運(yùn)行結(jié)果如下,注釋內(nèi)的內(nèi)容被注釋掉了沒(méi)有顯示在結(jié)果里:
四、變量的命名事項(xiàng)
Python中變量命名要求有以下:
1、大小寫(xiě)字母、數(shù)字、下劃線和漢字字符及其組合。
2、首字符不能是數(shù)字,不能與保留字(關(guān)鍵字)相同(比如if、elif、True、False、or、and、as、import等等)。
3、區(qū)別大小寫(xiě)(比如you和You是不同的標(biāo)識(shí)符)。
要注意采用能明顯表達(dá)含義的變量是很重要的,便于自己調(diào)用和查找。
五、基本輸入和輸出函數(shù)
(一)輸入和輸出
Python中提供了用于實(shí)現(xiàn)輸入和輸出功能的函數(shù)input()和print()。
input()函數(shù)用于接收一個(gè)標(biāo)準(zhǔn)輸入數(shù)據(jù),返回一個(gè)字符串類(lèi)型數(shù)據(jù),通過(guò) input() 函數(shù)返回的數(shù)據(jù)是字符串類(lèi)型,可以通過(guò)類(lèi)型轉(zhuǎn)換的方式,獲得需要的數(shù)據(jù)類(lèi)型,另外還可以在input函數(shù)中加上\n\n,表示在輸出結(jié)果前會(huì)輸出兩個(gè)空行,且按下回車(chē)鍵后程序才會(huì)等待用戶輸入。
print()函數(shù)用于向控制臺(tái)中輸出數(shù)據(jù),可以直接輸出任何類(lèi)型的數(shù)據(jù),print函數(shù)是默認(rèn)換行的,若不需要換行輸出,即在后面加上end="",例如下列Python代碼:
運(yùn)行結(jié)果:
下列python代碼通過(guò)type()函數(shù)返回相應(yīng)輸入的數(shù)據(jù)類(lèi)型:
運(yùn)行結(jié)果如下:
(二)多個(gè)輸入
通過(guò)內(nèi)置函數(shù)isinstance()檢驗(yàn)是否為相應(yīng)的類(lèi)型,若輸出為T(mén)rue則為相應(yīng)的數(shù)據(jù)類(lèi)型,若為False則不為該數(shù)據(jù)類(lèi)型,也可以通過(guò)type()函數(shù)來(lái)檢驗(yàn),它會(huì)直接返回?cái)?shù)據(jù)類(lèi)型。
這里簡(jiǎn)單介紹下當(dāng)需要用戶自己輸入多個(gè)數(shù)的操作方法,下列python代碼,使用了字符串中的split()方法,通過(guò)分隔符把輸入的內(nèi)容分割,這里由于split方法中為空,即通過(guò)空格分割輸入的a,b,在輸入a和b時(shí),輸入a后空格再輸入b:
a, b = input().split() print(a, b) print(isinstance(a, int)) print(isinstance(a, str))#可看出輸入的數(shù)據(jù)類(lèi)型是字符串運(yùn)行結(jié)果如下,輸入數(shù)字2和3,用空格隔開(kāi),這里可看出這樣輸入的數(shù)據(jù)類(lèi)型是字符串:
還有另一種方式,是通過(guò)map()內(nèi)置函數(shù):
map()根據(jù)提供的函數(shù)對(duì)指定序列做映射,它有兩個(gè)參數(shù),分別是參數(shù)function和iterable,通過(guò)把函數(shù)function依次作用在中的每個(gè)元素上,返回一個(gè)迭代器。
如下python代碼,通過(guò)這種map()中的function設(shè)置輸入的數(shù)據(jù)類(lèi)型,比如int整型、float浮點(diǎn)型和str字符串等數(shù)據(jù)類(lèi)型,另外通過(guò)type()函數(shù)檢驗(yàn)其數(shù)據(jù)類(lèi)型:
# int x, y = map(int, input().split()) print(x, y) print(type(x)) # float a, b = map(float, input().split()) print(a, b) print(type(a)) # str m, n, p = map(str, input().split(",")) print(m, n, p) print(type(m))運(yùn)行結(jié)果如下:
六、數(shù)字類(lèi)型
在Python中有四種數(shù)字類(lèi)型:整型、浮點(diǎn)型、復(fù)數(shù)和布爾類(lèi)型。
(一)整型
int,整型即整數(shù)類(lèi)型,Python中有四種進(jìn)制來(lái)表示整型,即二進(jìn)制(以0B或0b開(kāi)頭)、八進(jìn)制(以0O或0o開(kāi)頭)、十進(jìn)制和十六進(jìn)制(以0X或0x開(kāi)頭)。另外python中有個(gè)內(nèi)置函數(shù)int(),通過(guò)該函數(shù)可將一個(gè)字符串或數(shù)字轉(zhuǎn)換為整型,它有兩個(gè)參數(shù)如下:
int(字符串或數(shù)字,進(jìn)制數(shù))#進(jìn)制數(shù)默認(rèn)為10,即默認(rèn)為十進(jìn)制這里引用int()函數(shù)的注意事項(xiàng):當(dāng)為純數(shù)字時(shí),則不能有 base 參數(shù),否則報(bào)錯(cuò),使其作用為對(duì)入?yún)?x 取整;當(dāng)為 str時(shí),則 base 可略可有,base 存在時(shí),為 base 類(lèi)型數(shù)字,并將其轉(zhuǎn)換為 10 進(jìn)制數(shù)字,若不符合 base 規(guī)則,則會(huì)報(bào)錯(cuò)。
這里簡(jiǎn)單講一下,在python中通過(guò)內(nèi)置方法來(lái)轉(zhuǎn)換進(jìn)制:
| 十進(jìn)制轉(zhuǎn)換為二進(jìn)制 | bin() |
| 十進(jìn)制轉(zhuǎn)換為八進(jìn)制 | oct() |
| 十進(jìn)制轉(zhuǎn)換為十六進(jìn)制 | hex() |
以下是一個(gè)藍(lán)橋杯軟件類(lèi)python組的一道填空題,通過(guò)使用內(nèi)置方法既可以很快地解出答案。
例、問(wèn)題描述:請(qǐng)問(wèn)十六進(jìn)制數(shù)2021ABCD對(duì)應(yīng)的十進(jìn)制是多少?
運(yùn)行結(jié)果如下:
(二)浮點(diǎn)型
float,浮點(diǎn)型即帶有小數(shù)點(diǎn)的數(shù)值,對(duì)于一些較大和較小的浮點(diǎn)數(shù),可以通過(guò)科學(xué)計(jì)數(shù)法來(lái)表示,例如3.5e3表示3.5×10^3,3.5e-3表示3.5乘以10的負(fù)三次冪。
(三)復(fù)數(shù)
complex,復(fù)數(shù),其由實(shí)部和虛部組成,實(shí)部和虛部都是浮點(diǎn)型。可以通過(guò)復(fù)數(shù)的一般形式來(lái)創(chuàng)建復(fù)數(shù),也可以通過(guò)complex()函數(shù)來(lái)創(chuàng)建,例如下列Python代碼:
new_complex1=3.2+2.7j print("創(chuàng)建的復(fù)數(shù)為:", new_complex1) new_complex2 = complex(2, 5) print("創(chuàng)建的復(fù)數(shù)為:", new_complex2)運(yùn)行結(jié)果如下:
(四)布爾類(lèi)型
Python中布爾類(lèi)型只有兩個(gè)取值,即True和False,可以說(shuō)布爾類(lèi)型是一種特殊的整型,即True和False對(duì)應(yīng)整型中的1和0,且所有的對(duì)象都可以轉(zhuǎn)換為布爾類(lèi)型。
例如以下會(huì)被bool()轉(zhuǎn)換為False:None、為0的數(shù)字類(lèi)型、空序列、空字典、空實(shí)例,例如下列Python代碼:
運(yùn)行結(jié)果如下:
(五)常見(jiàn)的強(qiáng)制轉(zhuǎn)換函數(shù)
通過(guò)int()、float()和str()強(qiáng)制轉(zhuǎn)換函數(shù)將其它類(lèi)型強(qiáng)制轉(zhuǎn)換為相應(yīng)的類(lèi)型,例如下列Python代碼:
print(float(100)) print(int(3.333333)) str_1 = "100" str_2 = "3.333333" str_sum = float(str_1) + float(str_2) print(str_sum)運(yùn)行結(jié)果如下:
五、字符串
(一)字符串的表示
字符串是一種可以用來(lái)表示文本的數(shù)據(jù)類(lèi)型,Python中的字符串創(chuàng)建后不能修改,可以使用'或者"來(lái)定義單行字符串,它們的含義是一樣的,若要定義多行字符串,使用'''或"""來(lái)定義,且都是以引號(hào)開(kāi)頭和結(jié)尾的。
(二)格式化輸出
在Python中,可以通過(guò)占位符、format()格式化函數(shù)和f-strings方式三種來(lái)對(duì)字符串格式化輸出。
1、占位符
簡(jiǎn)單的來(lái)說(shuō),通過(guò)使用占位符%來(lái)為實(shí)際值預(yù)留位置,且可以說(shuō)明該格式,下面是常用的占位符:
例如下列Python代碼,通過(guò)占位符占位輸出字符串類(lèi)型%s和十進(jìn)制整數(shù)類(lèi)型%d:
運(yùn)行結(jié)果:
2、format()格式化函數(shù)
使用格式化函數(shù)可以不用注意變量的類(lèi)型,直接通過(guò){}來(lái)預(yù)留實(shí)際值位置,且可以通過(guò)在{}中編號(hào)(從0開(kāi)始)來(lái)確定預(yù)留位置,若沒(méi)有使用編號(hào),將通過(guò)format()中的參數(shù)順序依次進(jìn)行替換。
例如,下列Python代碼,通過(guò).format()函數(shù)替換實(shí)際值,0對(duì)應(yīng)password、1對(duì)應(yīng)account、2對(duì)應(yīng)tel、3對(duì)應(yīng)address:
運(yùn)行結(jié)果:
另外也可以使用format()格式化函數(shù)來(lái)進(jìn)行一些數(shù)字運(yùn)算的格式化,比如:
保留n位小數(shù)點(diǎn):{:.nf},其中n為浮點(diǎn)數(shù)的n位小數(shù)。
數(shù)字補(bǔ)齊:{:m>nd},其中m為補(bǔ)齊的數(shù)字,n為補(bǔ)齊后數(shù)字的長(zhǎng)度,中間可以為>或<,表示在原數(shù)字左側(cè)和右側(cè)進(jìn)行補(bǔ)齊。
顯示百分比:{:.n%},其中n為保留的小數(shù)位。
例如,下列Python代碼:
運(yùn)行結(jié)果如下:
3、f-strings方式
f-strings方式只適用于Python3.6版本之后的版本,這種方式更為簡(jiǎn)單,它以f或F放在字符串的前面,使用{}來(lái)預(yù)留實(shí)際值位置,它也是不需要注意變量的類(lèi)型,相比其它格式化輸出方式更加高效。
例如下列Python代碼:
運(yùn)行結(jié)果如下:
(三)字符串的操作和處理
1、字符串拼接和重復(fù)輸出
通過(guò)運(yùn)算符可以對(duì)字符串進(jìn)行一系列的操作,比如要想將兩個(gè)字符串拼接起來(lái),可以使用運(yùn)算符+來(lái)實(shí)現(xiàn);通過(guò)使用*,來(lái)重復(fù)輸出字符串,例如下列Python代碼:
運(yùn)行結(jié)果如下:
2、字符串替換
通過(guò)使用replace()方法,對(duì)舊的字符串進(jìn)行新的字符串替換,replace()函數(shù)中參數(shù)依次為原有字符串、新字符串、替換次數(shù),例如下列Python代碼:
運(yùn)行結(jié)果如下,由于我們?cè)O(shè)置的替換次數(shù)為1,所以只替換了原字符串中的一個(gè)A001:
3、字符串分割
通過(guò)使用split()方法對(duì)字符串進(jìn)行分割,split()函數(shù)中參數(shù)依次為分隔符(默認(rèn)為空字符,可以為空格、\n、\t等等)、分割數(shù),例如下列Python代碼:
運(yùn)行結(jié)果如下:
4、字符串清除
使用strip()方法對(duì)字符串的兩側(cè)的空格進(jìn)行清除或清除兩側(cè)特定的字符,例如下列Python代碼:
運(yùn)行結(jié)果如下:
5、取字符串長(zhǎng)度
通過(guò)使用len()函數(shù)取字符串的長(zhǎng)度,即該函數(shù)返回字符串的長(zhǎng)度,例如下列Python代碼:
運(yùn)行結(jié)果如下:
6、搜索字符串出現(xiàn)次數(shù)
通過(guò)使用count()方法返回字符或字符串出現(xiàn)的次數(shù),可以只帶搜索的字符或字符串,也可以加上兩個(gè)參數(shù)表示開(kāi)始搜索和結(jié)束搜索的位置,它們默認(rèn)為第一個(gè)字符和最后一個(gè)字符,若沒(méi)有搜索到則為0。
例如下列python代碼:
運(yùn)行結(jié)果如下:
7、搜索字符串下標(biāo)
通過(guò)使用find()方法返回字符或字符串第一次出現(xiàn)時(shí)的下標(biāo),它也有可選參數(shù),即在搜索的開(kāi)始與結(jié)束位置。
例如下列python代碼:
運(yùn)行結(jié)果如下:
8、字符與Unicode編碼的轉(zhuǎn)換
通過(guò)chr()函數(shù)和ord()函數(shù)可實(shí)現(xiàn)Unicode編碼和單字符之間的轉(zhuǎn)換,如下:
例如下列Python代碼:
運(yùn)行結(jié)果如下:
(四)字符串的索引和切片
1、字符串的索引
當(dāng)需要提取字符串中的特定字符或子串時(shí),就可以通過(guò)索引和切片來(lái)實(shí)現(xiàn)。
通過(guò)索引,可以返回字符串中單個(gè)字符,索引分為正向索引和反向索引,正向即從0開(kāi)始,從左至右依次遞增;反向索引是從-1開(kāi)始,但從右至左,依次遞減。
例如下列Python代碼:
運(yùn)行結(jié)果如下:
2、字符串的切片
切片,即返回字符串中的一段字符子串,用于截取目標(biāo)對(duì)象的一部分,表示為[起始:結(jié)束:步長(zhǎng)],默認(rèn)步長(zhǎng)為1,步長(zhǎng)表示每多少個(gè)步長(zhǎng)取順序的第一個(gè),如果是負(fù)數(shù)的話,則表示逆順序取。
通過(guò)切片切下的子串包含起始位,但不包含結(jié)束位,即左閉右開(kāi),例[M:N]中,當(dāng)缺少M(fèi)表示從字符串開(kāi)頭取至結(jié)尾,當(dāng)缺少N表示從結(jié)尾取至開(kāi)頭,簡(jiǎn)單的記憶也就是缺少哪一部分從哪一部分向前或后取起。
例如下列Python代碼:
運(yùn)行結(jié)果如下:
可以這樣來(lái)理解,比如print(str_number[0:3:2]),起始位為0,結(jié)束位為3,步長(zhǎng)為2,每2個(gè)取順序的第二個(gè),即第一個(gè)為〇,第二個(gè)為二:
六、數(shù)值運(yùn)算操作符
以下是一些常用的數(shù)值運(yùn)算操作符:
1、x/y 除,即x與y的商,比如10/3的結(jié)果為3.3333……。
2、x//y 整數(shù)除,即x與y的整數(shù)商,比如10//3的結(jié)果為3。
3、x%y 取余數(shù),即模運(yùn)算,比如10%3的結(jié)果為1。
4、x ** y 冪運(yùn)算,即x的y次冪,當(dāng)y為小數(shù)時(shí),表示開(kāi)方運(yùn)算,比如10 ** 0.5的結(jié)果為10的開(kāi)平方。
例如下列python代碼:
運(yùn)行結(jié)果如下:
七、常用的數(shù)值運(yùn)算函數(shù)
1、abs(x) 對(duì)x取絕對(duì)值;
2、divmod(x,y) 商余(x//y和x%y),同時(shí)輸出商和余數(shù);
3、pow(x,y) 取冪,即x**y;
4、max(x1,x2,x3,…)和min(x1,x1,x1,…)表示取最大值和取最小值,其中括號(hào)內(nèi)不限;
5、complex(x) 將x變成復(fù)數(shù),增加虛數(shù)部分。
6、round(x,d) 對(duì)x四舍五入,d為保留小數(shù)位數(shù)。
例如下列python代碼:
運(yùn)行結(jié)果如下:
八、邏輯運(yùn)算符
1、or
使用運(yùn)算符or連接兩個(gè)操作數(shù)時(shí),若左操作數(shù)的布爾值為T(mén)rue,則返回左操作數(shù),否者返回右操作數(shù)。
2、and
使用運(yùn)算符and連接兩個(gè)操作數(shù)時(shí),若左操作數(shù)的布爾值為False,則返回左操作數(shù),否者返回右操作數(shù)。
3、not
使用運(yùn)算符not時(shí),若操作數(shù)的布爾值為T(mén)rue,則返回False,否則相反。
例如下列Python代碼:
運(yùn)行結(jié)果如下:
結(jié)語(yǔ)
以上就是本次Python程序開(kāi)發(fā)的全部?jī)?nèi)容,篇幅較長(zhǎng),感謝您的閱讀和支持,若有表述或代碼中有不當(dāng)之處,望指出!您的指出和建議能給作者帶來(lái)很大的動(dòng)力!!!
總結(jié)
以上是生活随笔為你收集整理的Python程序开发——第一章 基本python语法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Web前端开发笔记——第三章 CSS语言
- 下一篇: Python程序开发——第二章 条件语句