Python基础之二

一、运算符
1、算术运算
常用:加减乘除(+、-、*、/)
不常用:取整(//)、取余[也叫取模](%)、幂次方运算(**)
2、赋值运算
赋值运算(=),如 num = 1,将1赋值给变量num
拓展:
加法赋值运算(+=)、减法赋值运算(-=)、乘法赋值运算(*=)、
除法赋值运算(/=)、取整赋值运算(//=)、取模赋值运算(%=)、
幂次方赋值运算(**=)
eg.
# 算术运算
print(23 // 5)  # 取整运算
print(13 % 5)  # 取余/取模运算
print(2 ** 4)  # 幂运算
print('-------分割符------')
# 赋值运算
num_1 = 2
print(num_1)
num_1 = num_1 + 3  # 加法赋值运算一般写法
print(num_1)
num_2 = 2
num_2 += 3  # 简写,此写法效果等同于num2=num2+3,其它运算类同
print(num_2)

3、比较运算
>、<、==、>=、<=、!=
在运算时返回布尔值(True或False)
4、逻辑运算
与:and
或:or
非:!
在运算时返回布尔值(True或False)
eg.
 1 # 比较运算
 2 num = 10
 3 print(num > 5)  # num大于5为真返回True
 4 print(num != 10)  # num不等于10为假,返回False
 5 print('-------分割符--------')
 6 # 逻辑运算
 7 num_1 = 10
 8 num_2 = 20
 9 print(num_1 == 10 and num_2 == 10)  # and的前后同时为真则输出True,否则输出False
10 print(num_1 != 10 or num_2 != 10)
11 # or的前后只要有一个为真则输出True,两个为假则输出False,该句中num_2 != 10为真


二、字符串
1、字符串定义
单引号或双引号、三单引号或三双引号
(字符串定义里面如果有空格,也算是字符串的一部分,要占一个位置)
eg.
# 字符串定义
str_01 = 'Hello'
str_02 = 'World'
str_03 = '''人生苦短'''
str_04 = """我选Python"""
print(str_01, str_02, str_03, str_04)

2、字符串特性
(1)不可修改
(2)有序的
3、字符串访问和切片
3.1通过索引进行访问
索引从0开始(正序)
索引从-1开始(倒序)

3.2切片
语法:字符串变量名[起始位索引:结束位索引:步长]
规则:左闭右开(左:起始位索引;右:结束位索引);如有空格也占一个索引位置;
步长不写默认为1,即正序切片,每个都取;起始位不写默认从0开始(正序),
或从-1开始(倒序);结束位不写默认取到字符串的最大长度
步长:有两重含义,正负符号表示切片顺序,正序或者倒序切片;
数字代表切片间距。
eg.
# 访问和切片
variable = 'Python'
# 访问
print(variable[2])  # 正序访问第三个位置字母t(索引为2)
print(variable[-4])  # 倒序访问(索引为-4,取值和正序相同)
# 正序和倒序虽然索引值不同,但是对应的位置是一致的,所以取值结果也一样
print('-----分割符------')
# 切片
print(variable[:])  # 起始位索引不输入默认为0,结束位索引不输入默认取到结束,步长不输入默认正序取值,步长值为1
print(variable[::-1])  # 步长为负数则倒序取值,步长值为1,所以是nohtyP
print(variable[::2])  # 正序取值,步长值为2,即每2位取一个值,结果是Pto
print(variable[1:-1:2])  # 正序取值,步长值为2,即每2位取一个值,起始位索引1即从字母y开始,结束位索引-1,
# 注意左闭右开,所以不包含字母n,也就是在ytho中取值,所以是yh,
# 该写法等同于print(str[1:5:2])或者print(str[-5:-1:2])
print(variable[-2::-3])  # 倒序取值,步长值为3,起始位索引-2,结束位索引不输入默认取到结束,
# 即在Pytho中倒序取值,每3位取一值,即oy
print(variable[:-5:-2])  # 倒序取值,步长值为2,起始位索引不输入默认为倒序的第一位-1即从n
# 开始取值,结束位索引-5,左闭右开规则所以不包括结束位字母y,所以是从thon中倒序每2位取一值,即nh
print(variable[::-1][1:4:2])  # 拓展1,切片后再切片
print(variable[-3:1])  # 拓展2,取值为空,不报错

4、字符串运算
4.1、拼接:+
4.2、重复输出:*
5、转义
定义:有特殊含义的字符就叫转义字符,如\n(换行符)、\t(空格符)
取消转义:在\n或者\t前面多加一条\,则会把\n或者\t当做普通字符,
也可以在字符串引号前面加一个r
eg.
# 字符串运算和转义
str_1 = 'Hello,'
str_2 = 'Python'
str_3 = 'Hello\nWorld'  # \n换行
str_4 = 'Hello\\nWorld'  # 把\n当做普通字符,等同于str_4 = r'Hello\nWorld'
str_5 = 'Hello\tWorld'  # \t空格
str_6 = r'Hello\tWorld'  # 把\t当做普通字符,等同于str_6 = 'Hello\\tWorld'
print(str_1 + str_2)  # 拼接
print(str_1 * 3)  # 重复输出3次
print('------分割符------')
print(str_3)
print(str_4)
print(str_5)
print(str_6)

6、字符串常用方法
方法引用:变量名.方法名()
6.1、大小写转换
upper() 全部转为大写
lower() 全部转为小写
capitalize() 将字符串的首字母大写
title() 将字符串的每个单词首字母大写
swapcase() 大小写互换
eg.
# 大小写转换
variable = 'tEsT hEllO,pYThOn'
print(variable.upper())  # 全部转为大写
print(variable.lower())  # 全部转为小写
print(variable.capitalize())  # 将字符串(整体)的首字母大写,其它统一转为小写
print(variable.title())  # 将字符串的每个单词首字母大写,其它统一转为小写
print(variable.swapcase())  # 大小写互换

6.2、统计和查找
str.count(sub,start,end)
sub:需要统计的字符
start:统计的开始位索引
end:统计的结束位索引
如果start、end不传值,默认在整个字符串里面去统计
返回:统计该字符在字符串中出现的次数
str.find(sub,start,end)
sub:需要查找的字符
start:查找的开始位索引
end:查找的结束位索引
如果start、end不传值,默认在整个字符串里面去查找
返回:在字符串中查找到的首个该字符所在位置的索引
str.rfind(sub,start,end)
sub:需要查找的字符
start:查找的开始位索引
end:查找的结束位索引
如果start、end不传值,默认在整个字符串里面去查找
返回:在字符串中查找到的最后一个该字符所在位置的索引
eg.
# 统计和查找
variable = 'Hello Python'
num_01 = variable.count('h')  # 统计h在整个字符串出现的次数,注意有区分大小写
num_02 = variable.count('l', 0, 3)  # 统计l在Hel中出现的次数,注意同样遵循切片的左闭右开规则,另外切片用冒号分隔,这里用逗号分隔
num_03 = variable.count('l', 0, 4)  # 统计l在Hell中出现的次数,所以是2次
num_04 = variable.count('x')  # 统计的字符不存在时,则返回次数0
a = variable.find('h')  # 查找字符串中出现的第一个h所在位置的索引
b = variable.rfind('h')  # 查找字符串中出现的最后一个h所在位置的索引,因为只有一个h,所以和第一个相同
c = variable.find('m')  # 查找的字符不存在时,则返回-1
d = variable.rfind('o', 3, 11)  # 查找起始位索引为3,结束位索引为11,根据左闭右开,即在lo Pytho中查找最后一个o的索引,即索引为10
print(num_01)
print(num_02)
print(num_03)
print(num_04)
print('------分割符-------')
print(a)
print(b)
print(c)
print(d)

posted @ 2021-06-27 16:47  阿炳~  阅读(85)  评论(0)    收藏  举报