zoukankan      html  css  js  c++  java
  • python_内建结构

    列表

      • 索引
      • 切片
      • .count查某个元素的出现次数
      • .index根据内容找其对应的位置
    • 增加
      • a.append()
      • a.insert(index,"内容")
    • 修改
      • a[index] = "新值"
      • a[start:end] = [a,b,c]
    • 删除
      • remove("内容")
      • pop(index)
      • 不指定索引会默认删除最后一个
      • del a[index]
      • a.clear() 清空列表中的内容
    • 排序
      • sort()
      • a.sort() 调用a对象的方法
      • b = sorted(a) 调用内置方法
      • reserver()
    • 身份判断
      • type(a) is list
    • count
      • 统计列表中数据的个数
      • extend方法可以在列表的末尾一次性追加另一个序列中的多个值
      • a.extend(b) 扩展
      • c = a + b 用加号返回一个全新的列表

    tuble(元组)

    • 元组被称为只读列表,即数据可以被查询,但不能被修改
    • 另外,元组的意义还在于,元组可以在映射(和集合的成员)中当作键使用--而列表则不行,元组作为很多内建函数和方法的返回值存在。
    • 创建一个元素的时候一定要加个逗号(22,)

    不可变类型

    • 整形,字符串,元组

    可变类型

    • 列表,字典

    dictionary(字典)

    • 字典的键是不可变类型,值是可变类型或者是不可变类型

    • 两大特点

      • 无序
      • 键唯一
    • 增加

      • dic["age"] = 18
      • dic.setdefault("age",34)
      • 如果age这个键有那么不修改,如果没有就增加值为34
      • 返回值为真实的值
      • 通过键去查找
      • dic.keys()
      • 查找字典所有的键
      • 返回的是:'dict_keys'类型
      • dic.values()
      • 查找的是所有的值
      • 返回的是:'dict_values'类型
      • dic.items()
      • 查找的是所有的键值队
      • 返回的是:'dict_items'类型
      • 跟列表差不多
      • dic3.update(dic2)
      • 如果dic3和dic2有相同的键则会更新dic2中的内容
      • 和列表中的append差不多
      • del dic[键]
        • 删除的是键值对
      • dic.clear()
        • 删除成一个空字典
      • dic.pop(键)
        • 有返回值同list
      • dic.popitem()
        • 随机删除某组键值对,并以元组方式返回值
        • 没什么用
      • del dic
        • 删除整个字典对象
    • 其他操作以及涉及到的方法

      • 创建的第三种方式
        • dic = dict.fromkeys(['host1','host2'],'test') 输出格式如下:
          • {'host1': 'test', 'host2': 'test'}
    • 排序 sorted(dic)、sorted(dic.values)、sorted(dic.items)

      • 如果键是数字则根据数字的的大小排序
      • 没有dic.sort()
    • 遍历

      • 效率高的

        • for i in dic:
          • print(i,dic[i])
      • 效率低一些的

        • for i in dic.items(): # 会把字典转换为列表的过程,如果数据量少还可以,多的话就费时间
          • print(i)
        • for k,v in dic.items():
          • print(k,v)

    工厂函数(创建内建结构的方式)

    • a = list((1,2,3))
    • b = dict((("name","jay"),))
    • b = dict((["name","jay"],))
    • b = dict([["name","jay"],])

    字符串

    • 可以通过索引加切片的形式
    • 格式化字符串、
    • c = "---".join([a,b,c])
      • 通过“---”把a,b,c字符创拼接
      • 处理地址url会用到
    • c.count("l") # 统计元素个数
    • c.capitalize() # 首字母大写
    • c.center(50,"-") # 居中
    • c.encode
    • c.endswith("aa") # 以某个内容结尾
    • c.startwith('tty') # 以某个内容开头
    • c = "he llo kitty"
    • c.find("t") # 查找"t"在第几个位置,并将索引值返回
    • c.format() # 格式化输出
    • c.format_map()({'name':jay})
    • c.index('qqq') # 和find的区别是加入字符串没找到就会报错
    • c.isalnum()# 判断是否包含字母和数字
    • c.isdecimal() # 判断是否是十进制的数
    • c.isdigit() # 判断是否是一个整型
    • c.isidentifier() # 判断是否是非法字符如数字不能开头
    • c.islower() # 判断字符串是否全是小写
    • c.isupper() # 判断字符串是否全是大写
    • c.isspace() # 判断是否全是空格
    • c.istitle() # 判断是否是标题
      • 标题的特点是每个单词的首字母大写
    • c.lower() # 把字符串全部改为小写
    • c.upper() # 把字符串全部改为大写**
    • c.swapcase() # 把大写改为小写,把小写改为大写
    • c.ljust(20,'-') # 左对齐
    • c.rjust(20,'-') # 右对齐
    • c.strip() # 去除字符串的换行符和空格、制表符
    • c.lstrip() # 去除字符串左边的换行符和空格、制表符
    • c.rstrip() # 去除字符串右边的换行符和空格、制表符
    • "my title".replace('title','lession') # 把字符串中的title替换成lession
    • "My title title".rfind('t') # 最右边的"t"
    • c.split("字符",1) # 返回分隔后的字符串列表,1代表分隔一次
    • c.title() # 变成标题格式

    集合

    • 创建方式只有一种

      • s = set([13,45,667])
    • 重复的只会保留一个☆

    • 元素必须是可哈希的及元素是不可变类型

    • 分类

      • 可变集合(用的较多)
        • 本身非可哈希(可变的类型)
      • 不可变集合
    • 添加

      • s.add("uu") # 添加双引号中的元素
      • s.update('aop') # 分别添加元素a,元素o,元素p
      • s.update((231,132,"fdsafa") # 把以逗号分隔的元素添加到集合中
    • 删除

      • s.pop()
      • s.clear()
      • del s
    • 关系测试☆

    • 交集

      • a & b
      • a.intersection(b)
    • 并集

      • a | b
      • a.union(b)
    • 差集

      • c = a-b
      • a.difference(b)
    • 反向交集

      • c = a ^ b
      • a.symmetric_difference(b)
    • 父集

      • a > b
      • a.issuperset(b) # a是否包含b
    • 子集

      • a < b
      • a.issubset(b)
  • 相关阅读:
    html调用js提示方法名 is not defined处理方法
    Amazon Redshift 基于 PostgreSQL 8.0.2
    Data Nodes
    AWS X-Ray
    API Gateway 中控制和管理对 REST API 的访问
    CodeBuild 与 Amazon Virtual Private Cloud 结合使用
    ElastiCache for Redis 缓存策略
    在 AWS X-Ray 控制台中配置采样规则
    什么是 Amazon Kinesis Data Analytics for SQL 应用程序?
    AWS Secrets Manager
  • 原文地址:https://www.cnblogs.com/YLlang/p/11005673.html
Copyright © 2011-2022 走看看