python学习笔记1
文章目錄
- 一.基礎(chǔ)知識(shí)
- 二.python中的數(shù)據(jù)類型
- 三.運(yùn)算符
- 四.程序的控制結(jié)構(gòu)
一.基礎(chǔ)知識(shí)
print函數(shù)
字符串要加引號(hào),數(shù)字可不加引號(hào),如
還可輸入表達(dá)式,如
print(1+3)如果使用三引號(hào),print打印的內(nèi)容可不在同一行
print("line1 line2 line3")轉(zhuǎn)義字符
- \n換行
- \t水平制表符
- \r回車,覆蓋前面字符
- \b退一格
- 若想在輸出結(jié)果中加引號(hào),要加\print('老師說:\"惠yyds\"') 輸出老師說:"惠yyds"
原字符
若不希望轉(zhuǎn)義字符起作用,使用原字符r或R
如print(r"aa\naa")
輸出aa\naa
注意:最后一個(gè)字符不能是一個(gè)反斜杠,可以是兩個(gè)
二進(jìn)制與字符編碼
8bit(位)=1byte(字節(jié)) 1024byte=1KB 1024kb=1MB 1024mb=1g 1024g=1t
python中的標(biāo)識(shí)符和保留字
python中對(duì)象名不能是保留字
查看保留字
標(biāo)識(shí)符可以是I字母、數(shù)字、下劃線;不能以數(shù)字開頭;不能是保留字;嚴(yán)格區(qū)分大小寫
變量組成
變量由三部分組成:標(biāo)識(shí)(id,表示對(duì)象所存儲(chǔ)的內(nèi)存地址)、類型(type,表示對(duì)象的數(shù)據(jù)類型)、值(value,表示對(duì)象所儲(chǔ)存的具體數(shù)據(jù))
注釋
- 單行注釋# (快捷鍵ctrl+/)
- 多行注釋 ‘’‘-------’‘’
input函數(shù)
獲取用戶輸入的數(shù)據(jù),引號(hào)內(nèi)可以寫提示語(yǔ)
input的輸出結(jié)果是str類型!!!
二.python中的數(shù)據(jù)類型
python中常見的數(shù)據(jù)類型
整數(shù)類型int、浮點(diǎn)數(shù)類型float、布爾類型bool、字符串類型str
整數(shù)類型
可以表示正數(shù)、負(fù)數(shù)、零
整數(shù)不同進(jìn)制表示方式:十進(jìn)制(默認(rèn)的進(jìn)制)、二進(jìn)制(0b)、八進(jìn)制(0o)、十六進(jìn)制(0x)
python允許在數(shù)字中加_,如100_000_00和10000000相等
復(fù)數(shù):實(shí)數(shù)根+復(fù)數(shù)根+j
complex(re[,im]) 實(shí)部為re,虛部為im
浮點(diǎn)數(shù)類型
浮點(diǎn)數(shù)由整數(shù)部分和小數(shù)部分組成、使用浮點(diǎn)數(shù)進(jìn)行計(jì)算時(shí)可能出現(xiàn)小數(shù)點(diǎn)位數(shù)不確定的情況
解決該問題可以導(dǎo)入模塊decimal
這樣得到的結(jié)果就是精確的,但是大部分情況下我們不需要導(dǎo)入decimal模塊
布爾類型(boolen)
True表示1、False表示0
對(duì)象的布爾值
- 布爾值為False:False、0、None、空字符串、空列表、空元組、空字典、空集合
- 除上述對(duì)象外,其他對(duì)象布爾值為True
- 若把對(duì)象直接放在條件表達(dá)式去判斷,則判斷布爾值,如
字符串類型
可以使用引號(hào)來定義字符串、單雙引號(hào)定義的字符串必須在同一行、三引號(hào)定義的字符串可以不在同一行
字符串操作符:
- x+y 連接兩個(gè)字符串
- xn 或nx 復(fù)制n次字符串
- x in s 判斷x是否是s的子返回值為布爾數(shù)
- str[i] 索引,返回第i個(gè)字符
- str[N:M] 切片,返回索到M的子串,不包括M
數(shù)據(jù)類型轉(zhuǎn)換
將不同類型數(shù)據(jù)拼接在一起:
若浮點(diǎn)數(shù)類型轉(zhuǎn)為整數(shù)類型,只截取整數(shù)部分;將字符串轉(zhuǎn)換為整數(shù)類型時(shí),數(shù)據(jù)必須是整數(shù)
三.運(yùn)算符
算數(shù)運(yùn)算符
標(biāo)準(zhǔn)運(yùn)算符:加(+)、減(-)、乘()、除(/)、整除(//)
取余運(yùn)算符(%)
冪運(yùn)算符(**)
一正一負(fù)整除時(shí),向下取整-9//4=-3,余數(shù)=被除數(shù)-除數(shù)整除的商
算數(shù)運(yùn)算符優(yōu)先級(jí):** ~± */%// ±
賦值運(yùn)算符
執(zhí)行順序從右向左、支持鏈?zhǔn)劫x值(如a=b=c=20)、支持參數(shù)賦值(+= -= *= /= //=)、支持系列解包賦值(如a,b,c=1,2,3)
交換 a,b=b,a
比較運(yùn)算符
比較的是值,結(jié)果是布爾類型;符號(hào)(> < = >= <= == !=)
=為賦值運(yùn)算符,==為比較運(yùn)算符
比較對(duì)象的標(biāo)識(shí)使用is,如:
布爾運(yùn)算符
- and(兩個(gè)運(yùn)算符都為True時(shí),其結(jié)果才是True)
- or(只要有一個(gè)運(yùn)算數(shù)為True,其結(jié)果就是True)
- not(結(jié)果與運(yùn)算數(shù)相反)
位運(yùn)算
(將數(shù)據(jù)轉(zhuǎn)成二進(jìn)制進(jìn)行計(jì)算)
- 位與& 對(duì)應(yīng)數(shù)位都是1時(shí),結(jié)果數(shù)位才是1,否則為0
- 位或| 對(duì)應(yīng)數(shù)位都為0,結(jié)果數(shù)位才為0,否則為1
- 左移位運(yùn)算符<< 高位溢出舍棄,低位補(bǔ)0
- 右移位運(yùn)算符>> 低位溢出舍棄,高位補(bǔ)0
左移幾位就相當(dāng)于乘以幾,右移相當(dāng)于除,與左移類似
如
輸出32
print(32>>3)輸出4
運(yùn)算符的優(yōu)先級(jí)
先算術(shù)運(yùn)算符(先算乘除后算加減,冪運(yùn)算最優(yōu)先),然后位運(yùn)算,然后比較運(yùn)算,然后布爾運(yùn)算,最后賦值運(yùn)算
優(yōu)先計(jì)算括號(hào)中內(nèi)容
四.程序的控制結(jié)構(gòu)
計(jì)算機(jī)的流程控制
順序結(jié)構(gòu)、選擇結(jié)構(gòu)(if語(yǔ)句)、循環(huán)結(jié)構(gòu)(while語(yǔ)句、for-in語(yǔ)句)
順序結(jié)構(gòu)
程序從上到下的執(zhí)行代碼,中間沒有任何判斷和跳轉(zhuǎn),直到程序結(jié)束
選擇結(jié)構(gòu)
- 單分支結(jié)構(gòu): if———:
- 雙分支結(jié)構(gòu): if———: else:
- 多分支結(jié)構(gòu): if———: elif:(可有無數(shù)個(gè)elif) else:(可省略)
- 嵌套if的使用:先執(zhí)行外層條件表達(dá)式
- 條件表達(dá)式(不常用),是if————else的簡(jiǎn)寫,語(yǔ)法結(jié)構(gòu):(x) if 判斷條件 else (y) 如
循環(huán)結(jié)構(gòu)
- while循環(huán)
判斷N+1次,執(zhí)行N次
四步循環(huán)法:初始化變量、條件判斷、條件執(zhí)行體(循環(huán)體)、改變變量
練習(xí)題:使用while計(jì)算一到一百間的偶數(shù)和sum=0 a=1 #初始化變量 while a<101: #條件判斷 if a%2==0: #條件執(zhí)行體 sum+=a a+=1 #改變變量(否則a一直為1將陷入死循環(huán)) print(sum) - for-in循環(huán)
in表示從(字符串、序列等)中依次取值,又稱為遍歷
for-in遍歷的對(duì)象必須是可迭代對(duì)象
for-in語(yǔ)法結(jié)構(gòu):
for 自定義變量 in 可迭代對(duì)象:
循環(huán)體
練習(xí)題:使用for-in循環(huán)計(jì)算一到一百間的偶數(shù)和sum=0 for i in range(1,101): #range函數(shù)在下面第5點(diǎn)介紹if i%2==0: sum+=i print(sum) - 嵌套循環(huán)
嵌套循環(huán)中又嵌套了另外的完整的循環(huán)結(jié)構(gòu),其中內(nèi)層循環(huán)作為外層循環(huán)的循環(huán)體執(zhí)行
練習(xí)題:九九乘法表for i in range(1,10): #行數(shù)for j in range(1,i+1): #每行表達(dá)式個(gè)數(shù)print(j,'*',i,'=',i*j,end='\t')print() #換行
一些補(bǔ)充知識(shí)
- pass語(yǔ)句:只做一個(gè)占位符用在語(yǔ)法上需要語(yǔ)句的地方,在已經(jīng)搭建好語(yǔ)法結(jié)構(gòu),還沒想好代碼怎么寫時(shí)使用。(使程序不會(huì)報(bào)錯(cuò))
- 內(nèi)置函數(shù)range()
用于生成一個(gè)整數(shù)序列
語(yǔ)法結(jié)構(gòu):range(start,stop,step)
生成一個(gè)[start,stop),步長(zhǎng)為step的整數(shù)序列
start若不寫,默認(rèn)為0,step默認(rèn)為1 - break語(yǔ)句:結(jié)束循環(huán)結(jié)構(gòu),跳出當(dāng)前循環(huán)體,繼續(xù)執(zhí)行之后的代碼,通常與分支結(jié)構(gòu)if一起使用
- continue語(yǔ)句:結(jié)束當(dāng)前循環(huán),進(jìn)行下一次循環(huán),通常與分支結(jié)構(gòu)中if一起使用
- break和continue僅控制本層循環(huán)
- else語(yǔ)句:當(dāng)和循環(huán)搭配使用時(shí)候,循環(huán)正常結(jié)束時(shí)執(zhí)行else(沒有break和return語(yǔ)句)
輸出結(jié)果為2
for i in range(4):pass else:print("1")束時(shí)執(zhí)行else(沒有break和return語(yǔ)句)
python for i in range(4): print("2") break else: print("1")
輸出結(jié)果為2
python for i in range(4): pass else: print("1")
輸出結(jié)果為1
總結(jié)
以上是生活随笔為你收集整理的python学习笔记1的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 自动化测试遇到的难点_自动化测试过程中遇
- 下一篇: Python 2.7 Tutorial