Python基础篇之二
目录
1.1 if语句
1.2 条件表达式
1.3 pass语句
1.4 布尔运算符
1.5 正符合运算符
1.6 字符串string
1.7隐式字符串字面值拼接
1.8 转义符 "\"
1.9 raw字符串
1.10字符串运算
1.11字符串比较运算
1.12 in / not in 运算符
1.13 字符串索引 index
1.14 字符串切片 slice
1.15 常用函数
1.16 字符串编码转换函数
1.17 整数转换字符串函数
1.18 字符串构造函数
说明:让程序根据条件选择性的执行某条语句或某些语句 语法: if 真值表达式1: 语块1 elif 真值表达式2: 语块2 ... else: 语快3 注释: 1)真值判断会自上而下进行,如果有一条为True则执行其中的语句,然后结束if语句的执行,如果所有真值表达式为False,则执行else句的语句 2)elif语句可以有0个,一个或多个 3)else语句可以有0个或1个
###示例### chengji=int(input("请输入成绩")) if 90<chengji<100: print("非常优秀") else 70<chengji<90: print("优秀") elif 60<chengji>70: print("及格") elif chengji>100: print("输入错误") elif chengji<0: print("输入错误") else: print("不及格,下次努力!")
1.2 条件表达式
语法: 表达式1 if 真值表达式 else 表达式2 作用: 如果真值表达式的布尔值为True,则执行表达式1,并返回结果对象的引用,否则执行表达式2,并返回对象的引用() 注释: 1)真值表达式的值一定是True或者False 2)先执行真值表达式,如果True,则执行表达式1 如果Flase,则执行表达式2
###示例### >>>print(1+2 if True else 4+5) 3 >>>print(1+2 if False else 4+5) 9
1.3 pass语句
作用: (通常用来填充语法空白)
###示例### #输入一个季节,如果输入不是1-4,则打印输入错误,否则什么都不做; sea=int(input("请输入季节:")) if 1<=sea<=4: # if 1<=sea and sea<=4:(两条件同时满足) pass else: print("输入错误")
1.4 布尔运算符
"布尔非 not" 语法: not x (表达式) 作用: 对"x"进行布尔取非,为True,则返回False,否则返回True 注释: 只有0才是"假值",任何自然数都是"真值" ########################################################### ########################################################### "布尔与 and” 语法: X and y 作用: 优先返回"假值"对象,当"x"的布尔值为False,返回"x",否则返回"y" 注释: x,y 代表表达式 True and True #返回True True and False #返回False False and True #返回False False and False #返回False ########################################################### ########################################################### "布尔或 or" 语法 x or y #等同于if bool(x)==True else y 作用: 优先返回真值,当x为True时,返回x,否则返回y True or True #True True or False #True False or True #True Fale or False #False 注释: "not or and" < "比较运算符" < "加减法" < "*,/,//"
###示例### ###"布尔非" not ### >>>not 100 False >>> not 0 True >>>a=1 >>>bool(a) False
###示例### ###"布尔与" and ### >>100 and 200 >>>200 #优先返回假值,但是"100,200"都是"真值",so,返回y值即:200 >>> 200 and 100 100 #优先返回假值,但是"100,200"都是"真值",so,返回y值即:100 >>>a=100 >>>b=200 >>>a and b 200 >>>b and a 100 >>>0 and 0.0 0 #优先返回假值,但是"0,0.0"都是假值,则返回"x"的值即"0"而不是"0.0" >>>x=0 >>>y=0.0 >>>if x and y: #如果0 and 0.0,返回值为0,然后bool(0),返回False, print("True") else: #else "False" print("False") False #so ,返回False
###"布尔或" or ### a=int(input("请输入月份:")) if x<1 or x>12: print("输入有错") s=int(input("请输入成绩:")) or '0' x=int(s) print(x) 以上等同于 s=int(input("请输入成绩:")) if s=='' s='0' print(s)
1.5 正负运算符
语法: + 表达式 - 表达式 注释:正负号运算符是一元运算符(只有一个元素参加运算)
###示例### >>>d=(2-3j) >>>e=-d >>>print(e) (-2+3j)
1.6 字符串(string)
作用: 用来记录文本信息 字面值表达方式:用引号括起来的部分都是字符串 ' #单引号 ” #双引号 ''' #三单引号 """ #三双引号 注释: 1)单引号内的双引号不算结束符 2)双引号的单引号不算结束符 3)三引号内的可以包含单引号和双引号 4)三引号字符串的换行会自动转换为换行'\n'
###示例### >>> print('h"e"ll0') h"e"llo >>>print("h'e'llo") h'e'llo >>>print('''he"ll"o,my name's 'fu'''') he"ll"o,my name's 'fu' >>>print('''i like python\ni am a super''') #\n 换行符 i like python i am a super 等同于 >>>print("""i like python i am a super""") #单三引号和双三引号效果一样
1.7 隐式字符串字面值拼接
###示例### >>>print("hhh"'eee'"""ll"""'''o''') hhheeello
1.8转义符 \
作用: 字符串字面值中,用字符反斜杠\后跟一些字符代表特殊的一个字符: \' #\转义,即代表一个单引号' \n #换行符 \r #返回光标至行首 \f #换页 \t #水平制表符(TAB) \v #垂直制表符 \b #退格 \0 #字符串,字符值为0 \xXX #"XX"为两位16进制的字符 \uXXXX #Unicode16的16进制表示的字符 \UXXXXXXXX #Unicode32的16进制表示的字符(全世界统一的编码符)
###示例###
>>>print("\'") ' #转义符\后面的不转义(是啥就说啥) >>>print("aaa\nbbb\nccc") #\n 换行 aaa bbb ccc >>>print("abcde\rfg") fgcde #当输入abcde的时候光标至行首覆盖以前的ab字符,即fgcde >>> print("abcde\ff\fghi\fjklmn") abcde f ghi jklmn >>>print("abcdef\tgh") abcdef gt #TAB健 print("abcdef\bghi") abcdeghi #删除前一个字符(退格) >>>print("\x41") A >>>print("\u0041") A print("\U00000041") A 常见的ASCII编码(使用man命令查看 man ascii 二进制包"man-pages") 字符 十进制 十六进制 '0' 48 0x30 'A' 65 0x41 'a' 97 0x61 '\0' 0 0x00 '\n' 10 0x0A
如下图,
1.9 raw字符串
作用: (最原始的字符串,让转义符\无效) 格式 r'字符串内容'
###示例### >>>print(r"c:\newfile\test.py") c:\newfile\test.py #在字符串前面加上"r"使显示出最原始的内容(\转义符失效)
1.10字符串运算
+ 加法运算符用于拼接字符串 += 运算符用原字符串与右侧字符串拼接生成新的字符串
###示例### >>>a="abcd" >>>a+="efg" >>>print(a) abcdefg >>>a=10 >>>a+=20 >>>print(a) 30
1.11 字符串比较运算
符合 ">" ">=" "<" "<=" "!=" 格式 x<y 规则 1)字符串x的第一个字母与字符串y的第一个字母比较,如果不相同,则直接得到结果;如果相同,则再取第二个进行比较,以此类推 2)比较的依据是字符UNICODE编码值
###示例### >>>"ab" < "ac" True >>>"afcde" > "bbb" False
1.12 in / not in运算符
作用 用于排序,字典,集中等容器中,用于判断某个值是否存在容器中,not in 与 in值相反 格式 对象 in 序列
###示例### >>>"a" in "abcd" True >>>"el" in "welcome" True
1.13 字符串的索引
作用
python的字符串是不可以改变的字符序列(优先的排列)
语法
字符串[整数表达式]
1)python序列都可以用索引(index)来访问序列中的对象
2)python序列的正向索引是从0开始,第二个索引为1,以此类推,最后一个索引是len(s)-1
3) python序列的反向索引是以-1开始,-1代表最后一个,-2代表倒数第二个,以此类推
###示例###
>>>a="welcome"
>>>a[3]
'c' #以0开始,0是w,1是e,二是l
>>>a[-3]
'o' #最后的一位是以-1开始,即e
1.14 字符串切片slice
从字符串序列中取出相应的元素,重新组成一个字符串序列 语法 字符串[(开始索引b):(结束索引e)(:(步长))] 注释:小括号()括起的部分代表可以省略
说明:
1.开始索引是切片切下的位置,0代表第一个元素,1代表第二个元素,-1代表最后一个元素
2.结束索引是切片的终止索引(但不包含终止点)
3.步长是切片每次获取完当前元素后移动的方向和偏移量
1)没有步长,相当于取值完毕后右移动一个索引的位置(默认为1)
2)当步长为正整数时,取正向切片
3)当步长的负整数时,取反向切片,反向切片时,默认的起始位置为最后一个元素,终止位置是第一个元素的前一个位置
###示例###
>>>a="ABCDE" >>>a[::] #a[0:5] #a[0:5:1]--默认步长为1 ABCDE >>>a[1:4] BCD >>>a[1:3:2] B >>>a[1:2000:2] BD #可以超过预定值 >>>a[::-2] ECA >>>a[-1:-6:-2] ECA
1.15 python常用函数
len(s) #返回序列的长度{length(长度)} max(x) #返回序列的最大值的元素 min(x) #返回序列的最小值的元素
###示例### >>.a="welcome" >>>len(a) 7 >>>max(a) w >>>min(a) c
1.16 字符串编码转换函数
语法 ord(c) #返回一个字符的UNICODE值 chr(i) #返回这个值所对应的字符
###示例### >>>ord('付') 20184 >>>chr(20184) 付
1.17 整数转换字符串函数
语法 hex(i) # 将整数转换为十六进制字符串 oct(i) # 八进制 bin(i) # 二进制
###示例### >>>hex(110) '0x6e' >>>oct(110) '0o156' bin(110) '0b1101110'
1.18 字符串构造函数
语法 str(obj='') #将对象转换为字符串 注释 任何对象可以转换成字符串
###示例### >>>str(1/2) '0.5' >>>str(10/4) '2.5' >>>str('付') 付
END
成功的背后都是汗水