Python第三課
一、幾個(gè)概念
1.表達(dá)式
表達(dá)式灾螃,是由數(shù)字凿试、算符、數(shù)字分組符號(括號)褐鸥、自由變量和約束變量等以能求得數(shù)值的有意義排列方法所得的組合
表達(dá)式特點(diǎn)
表達(dá)式一般僅僅用于計(jì)算一些結(jié)果线脚,不會對程序產(chǎn)生實(shí)質(zhì)性的影響
如果在交互模式中輸如一個(gè)表達(dá)式,解釋器會自動將表達(dá)式的結(jié)果輸出
2.語句
一個(gè)語法上自成體系的單位,它由一個(gè)詞或句法上有關(guān)連的一組詞構(gòu)成
語句的執(zhí)行一般會對程序產(chǎn)生一定的影響,在交互模式中不一定會輸出語句的執(zhí)行結(jié)果
3.程序(program)
程序就是由一條一條的語句和一條一條的表達(dá)式構(gòu)成的浑侥。
4.函數(shù)(function)
函數(shù)就是一種語句姊舵,函數(shù)專門用來完成特定的功能
函數(shù)的形如:xxx()
函數(shù)的分類:
內(nèi)置函數(shù) : 或者內(nèi)建函數(shù),就是由語法規(guī)定存在的函數(shù)寓落,這些函數(shù)括丁,包含在編譯器的運(yùn)行時(shí)庫中,程序員不單獨(dú)書寫代碼實(shí)現(xiàn)它伶选,只需要調(diào)用既可史飞。
自定義函數(shù) : 由程序員自主的創(chuàng)建的函數(shù) 當(dāng)我們需要完成某個(gè)功能
時(shí),就可以去調(diào)用內(nèi)置函數(shù)仰税,或者自定義函數(shù)
函數(shù)的2個(gè)要素
參數(shù)
返回值
二构资、標(biāo)識符
關(guān)鍵字
python一些具有特殊功能的標(biāo)識符,這就是所謂的關(guān)鍵字陨簇,關(guān)鍵字是python已經(jīng)使用的了吐绵,所以不允許開發(fā)者自己定義和關(guān)鍵字相同的名字的標(biāo)識符標(biāo)識符概念
開發(fā)人員在程序中自定義的一些符號和名稱。標(biāo)識符是自己定義的,如變量名河绽、函數(shù)名等
組成:由26個(gè)英文字母大小寫拦赠,數(shù)字 0-9 符號 $
標(biāo)識符的規(guī)則:
1.標(biāo)識符中可以包含字母、數(shù)字葵姥、下劃線荷鼠,但是不能使用數(shù)字開頭 例如:name1 name_1 name1 1name(不行)
2.Python中不能使用關(guān)鍵字和保留字來作為標(biāo)識符
命名方式
駝峰命名法
小駝峰式命名法: 第一個(gè)單詞以小寫字母開始;第二個(gè)單詞的字字母大寫榔幸,例如:myName允乐、aDog
大駝峰式命名法: 每一個(gè)單字的首字母都采用大寫字母,例如:
FirstName削咆、LastName
下劃線命名法
不過在程序員中還有一種命名法比較流行牍疏,就是用下劃線“”來連接所有的單詞,比如 get_url buffer_size
三拨齐、基本數(shù)據(jù)類型
數(shù)據(jù)類型指的就是變量的值的類型鳞陨,也就是可以為變量賦哪些值
1.整數(shù)(int)和小數(shù)/浮點(diǎn)數(shù)(float)
整數(shù) : 所有整數(shù) 例如 : a = 1 b = 100 c =999 都是int類型
小數(shù)常量 : 所有小數(shù),又稱浮點(diǎn)數(shù) 例如 a = 1.2 b=6.66 用float類型表示
2.布爾值和空值
布爾值: 只有2個(gè)值一個(gè)是True 一個(gè)是False
None常量:只有一個(gè)數(shù)值就是None 也就是空值
四瞻惋、變量
變量的概念厦滤?
變量是計(jì)算機(jī)內(nèi)存中的一塊區(qū)域,存儲規(guī)定范圍內(nèi)的值歼狼,值可以改變掏导,通俗的說變量就是給數(shù)據(jù)起個(gè)名字。
變量命名規(guī)則:
變量名由字母羽峰、數(shù)字趟咆、下劃線組成要符合標(biāo)識符的命名規(guī)范
數(shù)字不能開頭
不能使用關(guān)鍵字
注意 : 是兩個(gè)對象相等和兩個(gè)對象是同一個(gè)對象是兩個(gè)概念
1 s1 = {'Jerry':'Python'}
2 import copy
3 s2 = copy.deepcopy(s1)
4 print(s2) # {'Jerry': 'Python'}
5
6 print(id(s1),id(s2))
7 print(s1==s2)變量的運(yùn)算
變量的運(yùn)算就是正常的四則運(yùn)算 ,需要注意的是在運(yùn)算過程中含有浮點(diǎn)數(shù)添瓷,那么它返回的就是一個(gè)浮點(diǎn)數(shù)類型
五、字符串
- 什么是字符串
字符串是由數(shù)字值纱、字母鳞贷、下劃線組成的一串字符
注意
單引號和雙引號不能混合使用
Python中用一對雙引號或者一對單引號包裹的內(nèi)容就是字符串 - 轉(zhuǎn)義字符
轉(zhuǎn)義字符是一種特殊的字符常量。轉(zhuǎn)義字符以反斜線""開頭,后跟一個(gè)或幾個(gè)字符虐唠。轉(zhuǎn)義字符具有特定的含義,不同于字符原有的意義,故稱“轉(zhuǎn)義”字符
總結(jié)
\t 表示制表符
\n 表示換行符
\ 表示反斜杠
’ 表示 ’
\ ‘’ 表示 ‘’ - 長字符串
長字符串 又叫做問檔字符串 我們使用三重引號來表示一個(gè)長字符串’’’ ‘’’
三重引號可以換行悄晃,并且會保留字符串中的格式 - 格式化字符串
第一種格式化字符串 拼串
第二種格式化字符串 參數(shù)傳遞
第三種格式化字符串 占位符
%s 字符串占位
%f 浮點(diǎn)數(shù)占位
%d 整數(shù)占位
第四種格式化字符串 f’{變量}’/ str.format - 字符串的其他操作
len() 字符串的長度
max() 最大值
min() 最小值
split() 分割字符串
s.rsplit() 反向分割
s.splitlines() 以\r \n來切割
s.partition(sep) 分三段返回元組
s.rpartition(sep) 反向分三段返回元組
join()拼接字符串
去空格
s.strip() 左右兩邊去空格
s.lstrip() 去左邊空格
s.rstrip() 去右邊空格
字符串大小寫
s.upper() 全部大寫
s.lower() 全部小寫
s.isupper() 判斷是不是大寫
s.islower() 判斷是不是小寫
6.字符串的修改
replace(old,new【count】)–> str
字符串中找到匹配的字符串凿滤,生成新的字符串
count表示替換幾次妈橄,不指定就是全部替換
'www.baidu.com'.replace('w','p')====>'ppp.baidu.com'
'www.baidu.com'.replace('w','p',2)====>'ppw.baidu.com'
'www.baidu.com'.replace('www','python',2)====>'python.baidu.com'
strip([chars]) --> str
從字符串兩端去除指定的字符集chars中的所有字符
如果chars沒有指定,去除兩端的空白字符
s = "\r \t \n Hello World \n \r \t"
print(s.strip()) ===>" Hello World"
a = " Hello World"
print(a.strip('H d')) ===>"ello Worl"
lstrip([chars]) --> str
從左開始
a = " Hello World"
print(a.lstrip('H d')) ===>"ello World"
rstrip([chars]) --> str
從右開始
a = " Hello World"
print(a.rstrip('H d')) ===>" Hello Worl"
7.字符串查找
find(sub[,start[,end]]) --> int
在指定的區(qū)間[start,end]從左至右翁脆,查找子串sub眷蚓,找到返回索引,沒找到返回-1
rfind(sub[,start[,end]]) --> int
在指定的區(qū)間[start,end]從右至左反番,查找子串sub沙热,找到返回索引,沒找到返回-1
index(sub[,start[,end]]) --> int
在指定的區(qū)間[start,end]從左至右罢缸,查找子串sub篙贸,找到返回索引,沒找到返回-1枫疆,沒找到拋出異常ValueError
rindex(sub[,start[,end]]) --> int
在指定的區(qū)間[start,end]從右至左爵川,查找子串sub,找到返回索引息楔,沒找到返回-1寝贡,沒找到拋出異常ValueError
count(sub[,start[,end]]) --> int
在指定的區(qū)間[start,end]從左至右,統(tǒng)計(jì)子串sub出現(xiàn)的次數(shù)
8.字符串判斷
endswith(suffix[,start[,end]]) -->bool
在指定的區(qū)間[start,end],字符串是否以suffix結(jié)尾
startswith(prefix[,start[,end]]) -->bool
在指定的區(qū)間[start,end],字符串是否以prefix開頭
9.字符串的判斷 is系列返回bool
a.isalnum() 是否字母和數(shù)字組成
a.isalpha() 是否是字母(偶爾會用)
a.isdecimal() 是否只包含十進(jìn)制
a.isdigit() 是否全部數(shù)字(0-9)
a.isidentifier() 是不是字母和下劃線開頭值依,其他都是字母圃泡、數(shù)字、下劃線(偶爾會用)
a.islower() 是否全部小寫
a.isupper() 是否都是大寫
a.isspace() 是否只包含空白字符
————————————————
版權(quán)聲明:本文為CSDN博主「對我是王珂」的原創(chuàng)文章愿险,遵循CC 4.0 BY-SA版權(quán)協(xié)議颇蜡,轉(zhuǎn)載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/wangkei_cn/article/details/107174480