Python中,列表list=变量a,a改变后list为啥不改变呢?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python中,列表list=变量a,a改变后list为啥不改变呢?相关的知识,希望对你有一定的参考价值。

参考技术A 改变后你再写一遍list = a,list就变了追问

能否解释下list=[a]这样赋值的原理,

python的序列

序列 : 列表(list) 元组(tuple) 字典(dict) 集合(set)

   列表   使用方括号[]
   元组   使用小括号()   
   字典   使用花括号{}   无序 可变 支持原位改变
   集合   无序 可变 包含任意类型  支持原位改变

列表 (list)
定义 li = []
使用下标访问列表中的值
列表的方法及函数

  len()     # 计算列表元素个数
  max()     # 返回列表最大值
  min()     # 返回列表最小值
  list()    # 将元组转换为列表
  .append()    # 添加元素,在列表末尾
  .count()     # 统计某个元素出现的次数
  .index()     # 查找某个元素(只查找第一个出现的索引值)
  .insert()    # 将对象插入列表  先写插入位置,再写元素值
  .pop()       # 删除列表中的元素,默认最后一个,可指定
  .remove()    # 移除列表中某个值的第一个匹配的
  .reverse()   # 反向列表元素
  .sort()      # 对原列表进行排序
  .clear()     # 清空列表

元组 (tuple)
定义 tu = (),;
可以使用下标 进行访问
元组中的元素无法修改
元组中的元素无法删除,但可以删除整个元组

元组的运算符和函数

    len()  计算元组的元素个数
    +      连接元组,形成新的元组
    *      复制元素或元组,形成新的元组或输出
    in     判断元素是否存在
    for    迭代
    max()  返回元组中的元素最大值
    min()  返回元组中的元素最小值
    tuple()  将列表转换为元组

元组的截取

例:
    tu = ("wang","li","zhao")  # 定义一个新的元组
    print(tu[1])   # 输出元组中的第二个元素
    print(tu[-1])  # 输出元组中的倒数第二个元素
    print(tu[1:])  # 输出元组中从第二个元素开始后的所有元素

字典 (dict)
定义 di = {}
可变容器,可存储任意类型
每个键值(key :value)
不允许同一个键出现两次,若出现,以 后面出现的值为准
键 不可变,不能使用列表命名

例:
    di = { name : wangdada , age : 21 , birth : 961216 } # 定义一个字典
    print(di)

使用键名进行访问字典

例:
    # 同上上述,他的键值分别是 name , age , birth
    print(di[‘name‘])   # 输出字典中的 name 键的值
    print(di[‘age‘])    # 输出字典中的 age 键的值
    print(di[‘birth‘])  # 输出字典中的 birth 键的值

字典的修改

  1. 添加新的键与值
     例:
        di[‘compartent‘] = "home";  # 添加 compartment 键 值为 home
        print(di[‘compartment‘])
  2. 修改已有键位
        di[‘age‘] = 30    # 更新 age 键 的值
  3. 删除已有键值
        del di[‘name‘]   # 删除 name 键 以及对应的值
        del di     # 删除 di 字典

字典的方法

   .values()   # 以列表的方式返回字典中的所有值
   .items()    # 以列表的方式返回可遍历的键,值
   .keys()     # 以列表的方式返回字典中的所有键
   .clear()    # 删除字典内所有元素

字典的函数

    len()     # 计算字典元素个数(键的总数)
    type()    # 返回字典的类型

集合

定义 s = set{} # 创建空集合

集合 无序(无法使用下标访问) 特性 去重

集合的方法

    .add()   # 添加元素
    .update()  # 更新序列
    .remove()  # 删除元素 删除一个不存在的元素会报错
    .pop()     # 随机删除集合中的某个元素,并返回该元素的值
    .

集合的并集 交集 差集

函数 的定义

      def 函数名称:
        函数体代码
        return 返回值

函数的调用
函数名(参数)
参数 : 形式函数 实际参数
函数的类型
无参 无返回值函数
无参有返回值函数
有参无返回值函数
有参有返回值函数

无参无返回值函数
    例:        
        def  use_info():
          print("name:徐爸爸")
          print("age:21")
无参有返回值函数

有参有返回值函数
有参无返回值函数
    例:
        def  use_info():



















以上是关于Python中,列表list=变量a,a改变后list为啥不改变呢?的主要内容,如果未能解决你的问题,请参考以下文章

python中是如何实现将一个函数中定义的变量在另一个函数中改变其值的

python中列表生成式

python的序列

python--List(列表)

python-list:列表

python列表list[ ]及列表函数