一、字符串

字符串也可以用下标取值、切片、for循环、len()取长度以及 in 和 not in 来进行操作。

但字符串是不可变的,不能被更改。只能构造一个“新的”字符串来存取你想要修改后的数据。

二、元组

元组与列表几乎一样,但是元组输入时使用小括号并且元组和字符串一样,不可变。

如果元组中只有一个值,你可以在括号内该值的后面跟上一个逗号,表明这种情况。否则,Python将认为你只是在括号内输入了一个值。 #列表最后也可以是逗号

三、引用

列表赋给一个变量时,实际上是将列表的“引用”赋给了该变量。引用是一个值,指向某些数据(列表的实际位置)。

根据上图所示,按道理a的值不应被修改,但是列表赋给a的是列表的“引用”,a赋给b的也是列表的“引用”,a和b都指向同一个地方(列表的实际位置)。

如果你不希望修改b时a的值也变化那么你可以使用python的copy()模块。python提供了名为copy()的模块,其中包含copy()和deepcopy()函数。

而copy.copy()函数可以复制列表或字典这样的可变值,而不是复制其“引用”。

当你要复制的列表中包含了列表,那就使用copy.deepcopy()函数来代替。

如果只使用copy()来复制包含了列表的列表时,仅仅只将外面的大列表给复制了,但是里面小的列表还是“引用”,如:

使用deepcopy()便可以将所有的列表复制,如:

更深的列表嵌套也没问题:

python列表与字符串、元组的区别以及列表引用的方式的更多相关文章

  1. python数据类型:序列(字符串,元组,列表,字典)

    序列通常有2个特点: 1,可以根据索引取值 2,可以切片操作 字符串,元组,列表,字典,都可以看做是序列类型 我的操作环境:Ubuntu16.04+python2.7 一.字符串类型 >按索引获 ...

  2. Python: 对于DataFrame.loc传入列表和传入元组输出区别的理解

    def test(): import pandas as pd tuples = [ ('cobra', 'mark i'), ('cobra', 'mark ii'), ('sidewinder', ...

  3. python中的字符串常量,是否支持通过下标的方式赋值

    说明: 今天在看python,通过下标获取字符串常量的字符,在想是否可以通过下标的方式赋值. 操作: 1.对字符串下标赋值 >>> text='python' >>> ...

  4. Python基础教程学习笔记:第二章 列表和元组

    1.序列中元素的索引: 第一个元素索引是0,第二个是1,依次递增 最后一个元素索引是-1,倒数第二个是-2,依次递减 2.序列(Sequence)的种类: 列表(list).元组(tuple).字符串 ...

  5. 孤荷凌寒自学python第八天 初识Python的序列之元组

    孤荷凌寒自学python第八天 Python的序列之元组 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) (同步音频笔记:https://www.ximalaya.com/keji/19103 ...

  6. Python数据类型详解——元组

    Python数据类型详解--元组 有时候我们的列表数据不想被别人修改时该怎么办? 此时,就可以使用元组来存放,元祖又称为只读列表,不能修改 定义方式:与列表类似,将列表的[]换成()即可. 特性: 1 ...

  7. Day2 Python基础学习——字符串、列表、元组、字典、集合

    Python中文学习大本营:http://www.pythondoc.com/ 一.字符串操作 一.用途:名字,性格,地址 name = 'wzs' #name = str('wzs')print(i ...

  8. Python之列表与元组的区别详解

    相同点:都是序列类型 回答它们的区别之前,先来说说两者有什么相同之处.list 与 tuple 都是序列类型的容器对象,可以存放任何类型的数据.支持切片.迭代等操作 foos = [0, 1, 2, ...

  9. Python之列表、字符串、元组和字典的基本用法

    1 模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相应的Python库支持,以后的课程中会深入讲解常用到的各种库,现在,我们先来象征性的学2个简单 ...

随机推荐

  1. php上传大文件的解决方案

    1.使用PHP的创始人 Rasmus Lerdorf 写的APC扩展模块来实现(http://pecl.php.net/package/apc) APC实现方法: 安装APC,参照官方文档安装,可以使 ...

  2. 【转载】最小生成树之Kruskal算法

    给定一个无向图,如果它任意两个顶点都联通并且是一棵树,那么我们就称之为生成树(Spanning Tree).如果是带权值的无向图,那么权值之和最小的生成树,我们就称之为最小生成树(MST, Minim ...

  3. 深度学习笔记(十三)YOLO V3 (Tensorflow)

    [代码剖析]   推荐阅读! SSD 学习笔记 之前看了一遍 YOLO V3 的论文,写的挺有意思的,尴尬的是,我这鱼的记忆,看完就忘了  于是只能借助于代码,再看一遍细节了. 源码目录总览 tens ...

  4. jmeter正则表达式提取多个值

    1.返回的数据截图,需要获取customerId.customerName的值 2.把jmeter查看结果树返回的数据放在 Regester,正则表达式写 : "customerId&quo ...

  5. python 3元运算符

    >>> ) >>> ) >>>

  6. [CTS2019]珍珠——二项式反演

    [CTS2019]珍珠 考虑实际上,统计多少种染色方案,使得出现次数为奇数的颜色数<=n-2*m 其实看起来很像生成函数了 n很大?感觉生成函数会比较整齐,考虑生成函数能否把n放到数值的位置,而 ...

  7. 笔记:Hive的主要技术改进(Major Technical Advancements in Apache Hive)

    http://web.cse.ohio-state.edu/hpcs/WWW/HTML/publications/papers/TR-14-2.pdf  (辅助参考:https://cwiki.apa ...

  8. shell远程操作另外一台机器上数据

    shell远程操作另外一台机器上的数据,有两种方式: 1 .配置免密登陆,2.使用sshpass 当前存在两台虚拟机,ip地址分别为:192.168.3.32 192.168.3.33 一.免密登陆操 ...

  9. NaN情况下无法比较大小

    <pre name="code" class="java">package nan; /** * NaN情况下无法比较大小 * @author ro ...

  10. UML分类

    类型                       静态图                     行为图                用例图                  交互图         ...