美文网首页
Python第十二课

Python第十二课

作者: namufari | 来源:发表于2019-12-19 18:45 被阅读0次

重点:字符串、
时间:2019年12月19日
课程:黑马Python基础第20、21章(193.9~201.6)

20.字符串

193.9 拆分和拼接字符串


image.png

05-hm-19

# 假设:以下内容是从网上抓取的
# 要求:
# 1. 将字符串中的空白字符全部去掉
# 2. 再使用 " " 作为分隔符,拼接成一个整齐的字符串
poem_str = "登鹳雀楼\t 王之涣 \t 白日依山尽 \t \n 黄河入海流 \t\t 欲穷千里目 \t 更上一层楼"

print(poem_str)

# 1. 拆分字符串
poem_list = poem_str.split()
print(poem_list)

# 2. 合并字符串
result = " ".join(poem_list)
print(result)

194.10 切片概念和语法以及倒序索引

  • 切片 方法适用于 字符串列表元组
    • 切片 使用 索引值 来限定范围,从一个大的 字符串切出 小的 字符串
    • 列表元组 都是 有序 的集合,都能够 通过索引值 获取到对应的数据
    • 字典 是一个 无序 的集合,是使用 键值对 保存数据
      image.png
字符串[开始索引:结束索引:步长]

注意

  1. 指定的区间属于 左闭右开[开始索引, 结束索引) => 开始索引 >= 范围 < 结束索引
    • 起始 位开始,到 结束位的前一位 结束(不包含结束位本身)
  2. 从头开始,开始索引 数字可以省略,冒号不能省略
  3. 到末尾结束,结束索引 数字可以省略,冒号不能省略
  4. 步长默认为 1,如果连续切片,数字和冒号都可以省略

索引的顺序和倒序

  • 在 Python 中不仅支持 顺序索引,同时还支持 倒序索引
  • 所谓倒序索引就是 从右向左 计算索引
    • 最右边的索引值是 -1,依次递减

195.11 字符串切片演练
演练需求

  1. 截取从 2 ~ 5 位置 的字符串
  2. 截取从 2 ~ 末尾 的字符串
  3. 截取从 开始 ~ 5 位置 的字符串
  4. 截取完整的字符串
  5. 从开始位置,每隔一个字符截取字符串
  6. 从索引 1 开始,每隔一个取一个
  7. 截取从 2 ~ 末尾 - 1 的字符串
  8. 截取字符串末尾两个字符
  9. 字符串的逆序(面试题)
num_str = "0123456789"

# 1. 截取从 2 ~ 5 位置 的字符串
print(num_str[2:6])

# 2. 截取从 2 ~ `末尾` 的字符串
print(num_str[2:])

# 3. 截取从 `开始` ~ 5 位置 的字符串
print(num_str[:6])

# 4. 截取完整的字符串
print(num_str[:])

# 5. 从开始位置,每隔一个字符截取字符串
print(num_str[::2])

# 6. 从索引 1 开始,每隔一个取一个
print(num_str[1::2])

# 倒序切片
# -1 表示倒数第一个字符
print(num_str[-1])

# 7. 截取从 2 ~ `末尾 - 1` 的字符串
print(num_str[2:-1])

# 8. 截取字符串末尾两个字符
print(num_str[-2:])

# 9. 字符串的逆序(面试题)
print(num_str[::-1]

21.容器类型公共方法

196.1 内置函数长度、删除、最大、最小、比较

image.png
注意
  • 字符串 比较符合以下规则:"0" < "A" < "a"

197.2 切片


image.png
  • 切片 使用 索引值 来限定范围,从一个大的 字符串切出 小的 字符串
  • 列表元组 都是 有序 的集合,都能够 通过索引值 获取到对应的数据
  • 字典 是一个 无序 的集合,是使用 键值对 保存数据

198.3 算数运算符及对比列表追加方法

image.png
注意
  • in 在对 字典 操作时,判断的是 字典的键
  • innot in 被称为 成员运算符

成员运算符

成员运算符用于 测试 序列中是否包含指定的 成员

image.png

200.5 完整的for循环-for else

  • Python 中完整的 for 循环 的语法如下:
for 变量 in 集合:
    
    循环体代码
else:
    没有通过 break 退出循环,循环结束后,会执行的代码

201.6 利用 for else 搜索字典列表
应用场景

  • 迭代遍历 嵌套的数据类型时,例如 一个列表包含了多个字典
  • 需求:要判断 某一个字典中 是否存在 指定的 值
    • 如果 存在,提示并且退出循环
    • 如果 不存在,在 循环整体结束 后,希望 得到一个统一的提示
students = [
    {"name": "阿土",
     "age": 20,
     "gender": True,
     "height": 1.7,
     "weight": 75.0},
    {"name": "小美",
     "age": 19,
     "gender": False,
     "height": 1.6,
     "weight": 45.0},
]

find_name = "阿土"

for stu_dict in students:

    print(stu_dict)

    # 判断当前遍历的字典中姓名是否为find_name
    if stu_dict["name"] == find_name:
        print("找到了")

        # 如果已经找到,直接退出循环,就不需要再对后续的数据进行比较
        break

else:
    print("没有找到")

print("循环结束")

相关文章

网友评论

      本文标题:Python第十二课

      本文链接:https://www.haomeiwen.com/subject/uxwmnctx.html