Python基础(第二章)

Python基础(第二章)_第1张图片
" 无限的意义写满天空 、太阳的光芒里都是我的祝愿 "

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、示例

这篇文章还将带我们了解到:

  1. 查取字符的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() 分割字符串

  1. 分割出来的结果用列表形式表示
  2. 默认以空格来分割
  3. 以什么作为分割对象、会导致其消失
  4. 与 partition() 函数存在区别
  5. partition() 函数一共分为三部分
  6. 以分割的字符(串)前后及自己三部分
# split 分割字符串
a = "i love you"
b = a.split()
print(b)

输出:["i","love","you"]

a = "i love you"
b = a.split("l")
c = a.partiton("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() 查找字符串

  1. 从0开始数位数、i为第0位
  2. 空格也被视作为一个位置
  3. 与 index() 函数存在区别
  4. index() 查找不存在会报错
  5. 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 () 替换字符串

  1. 替换不会改变原来字符串的内容
  2. 只会生成一个新的字符串
# replace 替换字符串
# 格式:新字符 = 原字符.replace("替换的内容","要更换的内容")
a = "i love you"
b = a.replace("you","her")
print(b)

输出:i love her

2、Python中的切片

一、 Python 中的切片

  1. 必要条件:在内存当中、数据是连续存储的数据类型、就可以切片

二、字符串的切片

  1. 语法:[起始位置:结束位置:步长(默认为1)]
  2. 以起始位置为闭区间、结束位置为开区间
  3. 闭区间取的到、开区间取不到

三、索引

  1. 从左到右(0~9)
  2. 从右到左(-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、运算符的分类

  1. 算术运算符
  2. 赋值运算符
  3. 比较运算符(关系运算符)
  4. 逻辑运算符
  5. 条件运算符(三元运算符)

3.2.1、算术运算符

一、算术运算符

  1. 加法运算符 表现形式 +
  2. 减法运算符 表现形式 -
  3. 乘法运算符 表现形式 *
  4. 除法运算符 表现形式 /
  5. 整除运算符 表现形式 //
  6. 取余运算符 表现形式 %
  7. 幂运算符 表现形式 **

二、除法运算得出的结果为浮点数

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、赋值运算符

  1. +=(x += 3 相当于 x = x + 3)
  2. -=(x -= 3 相当于 x = x - 3)
  3. *=(x *= 3 相当于 x = x * 3)
  4. **=(x **= 3 相当于 x = x ** 3)
  5. /=(x /= 3 相当于 x = x / 3)
  6. //=(x //= 3 相当于 x = x // 3)
  7. %=(x %= 3 相当于 x = x % 3)

3.2.3、比较运算符

一、比较运算符:用来比较二个值的关系、总会返回一个布尔值、如果关系成立、返回 True 、否则返回 False

二、特殊的比较方式

  1. == 比较二个对象的值是否相等
  2. != 比较二个对象的值是否不相等
  3. is 比较二个对象是否是同一个对象(比较的是id地址)
  4. is not 比较二个对象是否不是同一个对象(比较的是id地址)

三、特殊比较

  1. 先比较第一个数、若比较得不出结果、再比较第二个数
  2. 下列 a 中第一个数 2 比 1 大、所有正确
  3. 下列 b 中第一个数得不出比较结果、比较第二个数、" "比1小、所有错误
a = "2" >"1"
b = "2" > "21"
print(a)
print(b)

输出:True False

四、注意

  1. True可以看成1、 False可以看成0
  2. 空串、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)

  1. 简而言之、and 是来找False的、找到了则输出、找不到则输出最后一个True
  2. 在此处、空串不作为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. 格式:语句1 if 条件表达式 else 语句2
  2. 条件成立则执行语句1、不成立执行语句2
  3. 与条件语句不同

4、示例

一、以四种格式化字符串的方式实现521 ××× 嫁给我好吗?

  1. f "
a = "521"
b = "×××"
c = "嫁给我好吗?"
str1 = f'{a} {b} {c}'
print(str1)

输出:521 ××× 嫁给我好吗?
  1. format
a = "521"
b = "×××"
c = "嫁给我好吗?"
str2 = '{ } { } { }'.format(a,b,c)
print(str2)

输出:521 ××× 嫁给我好吗?
  1. 拼串
a = "521"
b = "×××"
c = "嫁给我好吗?"
d = a + " " + b + " " + c
print(d)

输出:521 ××× 嫁给我好吗?
  1. 占位符
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

你可能感兴趣的:(Python,字符串,列表,python,编程语言)