• Python中常见的公共方法


    1 Python 内置函数

    Python 包含了以下内置函数:

    函数描述备注
    len(item) 计算容器中元素个数  
    del(item) 删除变量 del 有两种方式
    max(item) 返回容器中元素最大值 如果是字典,只针对 key 比较
    min(item) 返回容器中元素最小值 如果是字典,只针对 key 比较
    cmp(item1, item2) 比较两个值,-1 小于/0 相等/1 大于 Python 3.x 取消了 cmp 函数

    注意

    • 字符串 比较符合以下规则: "0" < "A" < "a"

    2 切片

    描述Python 表达式结果支持的数据类型
    切片 "0123456789"[::-2] "97531" 字符串、列表、元组
    • 切片 使用 索引值 来限定范围,从一个大的 字符串切出 小的 字符串

    • 列表元组 都是 有序 的集合,都能够 通过索引值 获取到对应的数据

    • 字典 是一个 无序 的集合,是使用 键值对 保存数据

    3 运算符

    运算符Python 表达式结果描述支持的数据类型
    + [1, 2] + [3, 4] [1, 2, 3, 4] 合并 字符串、列表、元组
    * ["Hi!"] * 4 ['Hi!', 'Hi!', 'Hi!', 'Hi!'] 重复 字符串、列表、元组
    in 3 in (1, 2, 3) True 元素是否存在 字符串、列表、元组、字典
    not in 4 not in (1, 2, 3) True 元素是否不存在 字符串、列表、元组、字典
    > >= == < <= (1, 2, 3) < (2, 2, 3) True 元素比较 字符串、列表、元组

    注意

    • in 在对 字典 操作时,判断的是 字典的键

    • innot in 被称为 成员运算符

    成员运算符

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

    运算符描述实例
    in 如果在指定的序列中找到值返回 True,否则返回 False 3 in (1, 2, 3) 返回 True
    not in 如果在指定的序列中没有找到值返回 True,否则返回 False 3 not in (1, 2, 3) 返回 False

    注意:在对 字典 操作时,判断的是 字典的键

    4 完整的 for 循环语法

    • Python 中完整的 for 循环 的语法如下:

    for 变量 in 集合:
        
        循环体代码
    else:
        没有通过 break 退出循环,循环结束后,会执行的代码

    应用场景

    • 迭代遍历 嵌套的数据类型时,例如 一个列表包含了多个字典

    • 需求:要判断 某一个字典中 是否存在 指定的 值

      • 如果 存在,提示并且退出循环

      • 如果 不存在,在 循环整体结束 后,希望 得到一个统一的提示

    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.get('name') == find_name:
            print("找到了")
    
            # 如果已经找到,直接退出循环,就不需要再对后续的数据进行比较
            break
    
    else:
        print("没有找到")
    
    print("循环结束")

    Range

    # range()是一个函数,可以用来生成一个自然数的序列
    r = range(5) # 生成一个这样的序列[0,1,2,3,4]
    r = range(0,10,2)
    r = range(10,0,-1)
    # 该函数需要三个参数
    #   1.起始位置(可以省略,默认是0)
    #   2.结束位置
    #   3.步长(可以省略,默认是1)
    
    # print(list(r))
    
    # 通过range()可以创建一个执行指定次数的for循环
    # for()循环除了创建方式以外,其余的都和while一样,
    #   包括else、包括break continue都可以在for循环中使用
    #   并且for循环使用也更加简单
    # 将之前使用while循环做的练习,再使用for循环完成一次!
    for i in range(30):
        print(i)
    
    # for s in 'hello':
    #     print(s)

    下面着重介绍一下切片

    学完感觉类似java的截取

    # 切片
    # 切片指从现有列表中,获取一个子列表
    # 创建一个列表,一般创建列表时,变量的名字会使用复数
    stus = ['孙悟空','猪八戒','沙和尚','唐僧','蜘蛛精','白骨精']
    
    # 列表的索引可以是负数
    # 如果索引是负数,则从后向前获取元素,-1表示倒数第一个,-2表示倒数第二个 以此类推
    print(stus[-2])
    
    # 通过切片来获取指定的元素
    # 语法:列表[起始:结束] 
    #   通过切片获取元素时,会包括起始位置的元素,不会包括结束位置的元素
    #   做切片操作时,总会返回一个新的列表,不会影响原来的列表
    #   起始和结束位置的索引都可以省略不写
    #   如果省略结束位置,则会一直截取到最后
    #   如果省略起始位置,则会从第一个元素开始截取
    #   如果起始位置和结束位置全部省略,则相当于创建了一个列表的副本
    print(stus[1:])
    print(stus[:3])
    print(stus[1:4])
    print(stus[1:5:2])
    print(stus)
    
    # 语法:列表[起始:结束:步长] 
    # 步长表示,每次获取元素的间隔,默认值是1
    # print(stus[0:5:3])
    # 步长不能是0,但是可以是负数
    # print(stus[::0]) ValueError: slice step cannot be zero
    # 如果是负数,则会从列表的后部向前边取元素
    print(stus[::-1])
    
    #字符串可以切片
    str = 'hello'
    print(str)
    print(str[1:3])
    E:PyWorkSpacevenvScriptspython.exe E:/PyWorkSpace/venv/bbb.py
    蜘蛛精
    ['猪八戒', '沙和尚', '唐僧', '蜘蛛精', '白骨精']
    ['孙悟空', '猪八戒', '沙和尚']
    ['猪八戒', '沙和尚', '唐僧']
    ['猪八戒', '唐僧']
    ['孙悟空', '猪八戒', '沙和尚', '唐僧', '蜘蛛精', '白骨精']
    ['白骨精', '蜘蛛精', '唐僧', '沙和尚', '猪八戒', '孙悟空']
    hello
    el
    
    Process finished with exit code 0
  • 相关阅读:
    SqlServer执行Insert命令同时判断目标表中是否存在目标数据
    javascript避免dom事件重复触发
    磁盘结构损坏且无法读取
    iframe在iphone中滚动条无效
    Rancher2.x流水线自动化部署
    微服务模块化需要的几个基础功能
    后端程序员的Vue笔记(一)
    自信从何而来
    C#异步案例一则
    Blazor入坑指南
  • 原文地址:https://www.cnblogs.com/dalianpai/p/12129939.html
Copyright © 2020-2023  润新知