" 无限的意义写满天空 、太阳的光芒里都是我的祝愿 "
Python基础(内容基于逻辑教育Cheney课程)
- 1、字符串其它操作详细示例
- 2、Python中的切片
- 3、 运算符
- 3.1、运算符的概念
- 3.2、运算符的分类
- 3.2.1、算术运算符
- 3.2.2、赋值运算符
- 3.2.3、比较运算符
- 3.2.4、逻辑运算符
- 3.2.5、条件运算符
- 4、示例
这篇文章还将带我们了解到:
- 查取字符的ASCII值的方法
1、字符串其它操作详细示例
一、 len() 求取字符串的长度
# len 求取长度
a = "python"
print(len(a))
输出:6
二、 max() 、min() 求取字符串里面字符ASCII码的最大值和最小值
# max min
a = "hello you"
print(max(a),min(a))
输出:y 空格
a = "helloyou"
print(max(a),min(a))
输出:y e
三、 ord() 查取字符的ASCII值
print(ord(" "))
print(ord("y"))
print(ord("e"))
输出:32 121 101
四、 split() 分割字符串
- 分割出来的结果用列表形式表示
- 默认以空格来分割
- 以什么作为分割对象、会导致其消失
- 与 partition() 函数存在区别
- partition() 函数一共分为三部分
- 以分割的字符(串)前后及自己三部分
# split 分割字符串
a = "i love you"
b = a.split()
print(b)
输出:["i","love","you"]
a = "i love you"
b = a.split("l")
c = a.partition("l")
print(b)
print(b)
输出:["i ","ove you"] ("i ","l","ove you")
五、 join() 拼接
# join 拼接
a = "i love you"
b = a.split()
c = " ".join(b)
print(c)
输出:i love you
a = "i love you"
b = a.split()
c = "a".join(b)
print(c)
输出:ialoveayou
六、 find() 查找字符串
- 从0开始数位数、i为第0位
- 空格也被视作为一个位置
- 与 index() 函数存在区别
- index() 查找不存在会报错
- find() 查找不存在、返回值为-1
# find 查找字符串
a = "i love you"
print(a.find("you"))
输出:7
a = "i love you"
print(a.find("c"))
print(a.index("c"))
输出:-1、报错
七、replace () 替换字符串
- 替换不会改变原来字符串的内容
- 只会生成一个新的字符串
# replace 替换字符串
# 格式:新字符 = 原字符.replace("替换的内容","要更换的内容")
a = "i love you"
b = a.replace("you","her")
print(b)
输出:i love her
2、Python中的切片
一、 Python 中的切片
- 必要条件:在内存当中、数据是连续存储的数据类型、就可以切片
二、字符串的切片
- 语法:[起始位置:结束位置:步长(默认为1)]
- 以起始位置为闭区间、结束位置为开区间
- 闭区间取的到、开区间取不到
三、索引
- 从左到右(0~9)
- 从右到左(-1~-9)
四、示例
a = "abcdefg"
print(a[2:4])
print(a[2:4:2])
# 对应2的是c、对应4的是e、而e取不到(步长为1)
# 对应2的是c、对应4的是e、而e取不到(步长为2)、且d到c的步长为1、也取不到
输出:cd c
print(a[-1:-3:-1])
print(a[-1:-3:-2])
# 对应-1的是g、对应-3的是e、而e取不到(步长为-1)
# 对应-1的是g、对应-3的是e、而e取不到(步长为-1)、且f到g的步长为-1、也取不到
输出:gf g
print(a[::])
print(a[-1::-1])
print(a[::-1])
# 默认以步长1、输出全部字符
# 以步长-1、逆序输出全部字符
# 以步长-1、逆序输出全部字符
输出:abcdefg gfedcba gfedcba
3、 运算符
3.1、运算符的概念
概念:用于执行程序代码运算、会针对一个以上操作数进行运算
- 2 + 3(运算符:+、操作数:2和3)
- 3 // 5(运算符://、操作数:3和5 )
3.2、运算符的分类
- 算术运算符
- 赋值运算符
- 比较运算符(关系运算符)
- 逻辑运算符
- 条件运算符(三元运算符)
3.2.1、算术运算符
一、算术运算符
- 加法运算符 表现形式 +
- 减法运算符 表现形式 -
- 乘法运算符 表现形式 *
- 除法运算符 表现形式 /
- 整除运算符 表现形式 //
- 取余运算符 表现形式 %
- 幂运算符 表现形式 **
二、除法运算得出的结果为浮点数
a =6 / 2
print(a)
输出:3.0
三、字符串之间可以相加
a = "i" + "you"
print(a)
输出:iyou
四、字符串可以与整数相乘
a = "love" * 2
print(a)
输出:lovelove
五、开平方(借助幂运算)
a = 9**0.5
print(a)
输出:3
3.2.2、赋值运算符
- +=(x += 3 相当于 x = x + 3)
- -=(x -= 3 相当于 x = x - 3)
- *=(x *= 3 相当于 x = x * 3)
- **=(x **= 3 相当于 x = x ** 3)
- /=(x /= 3 相当于 x = x / 3)
- //=(x //= 3 相当于 x = x // 3)
- %=(x %= 3 相当于 x = x % 3)
3.2.3、比较运算符
一、比较运算符:用来比较二个值的关系、总会返回一个布尔值、如果关系成立、返回 True 、否则返回 False
二、特殊的比较方式
- == 比较二个对象的值是否相等
- != 比较二个对象的值是否不相等
- is 比较二个对象是否是同一个对象(比较的是id地址)
- is not 比较二个对象是否不是同一个对象(比较的是id地址)
三、特殊比较
- 先比较第一个数、若比较得不出结果、再比较第二个数
- 下列 a 中第一个数 2 比 1 大、所有正确
- 下列 b 中第一个数得不出比较结果、比较第二个数、" "比1小、所有错误
a = "2" >"1"
b = "2" > "21"
print(a)
print(b)
输出:True False
四、注意
- True可以看成1、 False可以看成0
- 空串、0、None、还有一些表示空性的值会转换为 False 、其余剩下的所有的值都是 True
3.2.4、逻辑运算符
一、逻辑运算符:逻辑非(not)、逻辑与(and)、逻辑或(or)
a = 1
a = not a
print(a)
输出:False
b = None
b = not b
print(b)
输出:True
c = None and 0
print(c)
二、特殊的逻辑与(and)
- 简而言之、and 是来找False的、找到了则输出、找不到则输出最后一个True
- 在此处、空串不作为False
a = 1 and 2
b = 1 and 0 and 3
c = None and 2 and 3
d = " " and 1 and 2
print(a)
print(b)
print(c)
print(d)
输出:2 0 None 2
3.2.5、条件运算符
条件运算符
- 格式:语句1 if 条件表达式 else 语句2
- 条件成立则执行语句1、不成立执行语句2
- 与条件语句不同
4、示例
一、以四种格式化字符串的方式实现521 ××× 嫁给我好吗?
- f "
a = "521"
b = "×××"
c = "嫁给我好吗?"
str1 = f'{a} {b} {c}'
print(str1)
输出:521 ××× 嫁给我好吗?
- format
a = "521"
b = "×××"
c = "嫁给我好吗?"
str2 = '{ } { } { }'.format(a,b,c)
print(str2)
输出:521 ××× 嫁给我好吗?
- 拼串
a = "521"
b = "×××"
c = "嫁给我好吗?"
d = a + " " + b + " " + c
print(d)
输出:521 ××× 嫁给我好吗?
- 占位符
s = '521 ××× %s'%'嫁给我好吗?'
print(s)
二、现在有a、b、c三个变量、三个变量分别保存有三个数值、通过条件运算符获取三个值中的最大值
a = 1
b = 2
c = 3
print(a) if a > b and a > c else print("第一次查找无")
print(b) if b > a and b > c else print("第二次查找无")
print(c) if c > b and c > a else print("第三次查找无")
输出:第一次查找无 第二次查找无 3