一:元组

    元组案例:tuple=("张三","李四","王五","小六","大七",["1","2","3","4"])    特点:不可变  只读列表。 也有索引 和切片功能    01):把字符串通过小括号()括起来,中间通过逗号(,)链接连接起来的就是元组。如果元素中有列表,          则列表这个元素是不需要加双引号的,如上案例!    02):元组中间的元素是不能改变的!(因为元素内部第一层的内存地址是无法改变的)但是如果元素中间有列表,          那那个列表是可以改变的! 案例中tuple[5]的列表是可以改变的!          (元组的不可变. 元组的不可变指的是元组内部第一层元素的内存地址)    03):元组也是有索引的(也是从左往右,从0开始数)          案例中:tuple[0]="张三" 打印:张三                  tuple[5]=['1', '2', '3', '4']  打印:['1', '2', '3', '4']    04):tuple_1=("123",)  元组中如果只有一个元素,则必须加一个逗号。    05):tuple=("张三","李四","王五","小六","大七",["1","2","3","4"])        元组不可改变,所以是不能增加元素的但是元组里的列表是可以增删改除的        tuple[5]=["1","2","3","4"]        例如增加:tuple.append("678") 打印:tuple[5]=["1","2","3","4","678"]    06):当强行改变元组的元素时会报错!         tuple=("张三","李四","王五","小六","大七",["1","2","3","4"])         tuple[1]="诸葛型"  报错:TypeError: 'tuple' object does not support item assignment

二:列表:lst(不能用“list” 这个单词做列表的名字,这样会覆盖掉元素里面的python里面的关键字)    01):列表:可以装对象的对象(像书包里装电脑)(可以装任何元素),排列顺序按照我们添加的顺序保存!    02):在代码中用 []  表示,里面可以放任何数据("" 空元素也是可以放的。 )。中间通过  逗号(,)链接,           一定要注意是实在英文状态下的标点符号    03):列表也是有增删改查的功能          # 例子:  lst = ["字符", 0, True, ["123",[], []]]          001):列表元素读取:lst[0]  打印结果: 字符          002):切片:lst[0:2]     打印:['字符', 0]                                    -----〉〉〉切片打印后的结果是一个列表。                 列表切片也是顾头不顾尾  lst[0:2)  前闭后开

          增删改查:          01)增:           1:  .append() 是追加在末尾。              lst=["1","2","3","4","5","6"]              print(lst.append("7"))  打印:None  # 可变的数据类型 没有返回值              正确代码:st=["1","2","3","4","5","6"]                    lst.append("7")                    print(lst)    打印结果:st=["1","2","3","4","5","6","7"]

            2:  .insert()插入到指定位置上                lst=["1","2","3","4","5","6"]                lst.insert(索引,"内容")    插入的是                list.insert(1,"9999")  打印结果: ['1', '9999', '2', '3', '4', '5', '6']

            3:  .extend()  迭代添加(会把添加的内容分开往后面添加)                lst=["1","2","3","4","5","6"]                lst.extend("言午许")                print(lst)  打印结果:['1', '2', '3', '4', '5', '6', '言', '午', '许']

                如果不需要他进行迭代添加,则只需要将其变成列表就行:                例如:                lst=["1","2","3","4","5","6"]                lst.extend(["言午许"])                print(lst)  打印结果:  ['1', '2', '3', '4', '5', '6', '言午许']

           02)删                一:单个元素删除:删除指定的元素                del                   lst=["1","2","3","4","5","6"]                   del lst[0]                   print(lst)                   del 列表名[索引] 是删除列表中索引的的对应的元素                del  批量删除                   lst=["1","2","3","4","5","6"]                   del lst[1]     类似pop删除    --〉['1', '3', '4', '5', '6']                   del lst[2:]   批量删除 --->['1', '2']                   del lst[0:5:1]  切片删除(从0到5  没两个数删除一个数)--->['1', '3', '5', '6']

                clear  清空列表                   lst=["1","2","3","4","5","6"]                   lst.clear()                   print(lst)    打印:[]

                pop:                lst=["1","2","3","4","5","6"]                lst.pop(0)  ----〉〉〉此时括号变成了小括号                print(lst)

           03)改            指定位置修改:                lst=["1","2","3","4","5","6"]                lst[3]="9999"                print(lst)  打印:['1', '2', '3', '9999', '5', '6']

            迭代修改:                lst=["1","2","3","4","5","6"]                lst[1:4]="言午许"                print(lst)     打印:  ['1', '言', '午', '许', '5', '6']

            切片修改:                lst=["1","2","3","4","5","6"]                lst[::2]=["小猫","小狗"]                print(lst)                打印:ValueError: attempt to assign sequence of size 2 to extended slice of size 3                此时:切片的出来步长 如果不是1,那么给定的元素必须要要和切出来的元素个数一样,那么才有                足够的元素去填补被切掉的部分。(同给的元素多了,切割的位置不够也还是会报错的!--〉                            ValueError: attempt to assign sequence of size 3 to extended slice of size 2)

               修改后的代码:                lst=["1","2","3","4","5","6"]                lst[::2]=["小猫","小狗","旺财"]                print(lst)                打印结果:['小猫', '2', '小狗', '4', '旺财', '6']

            04):查                lst=['小猫', '2', '小狗', '4', '旺财', '6']                for n in lst                    #n 表示lst中的每一项                    print(n)                    打印结果:                            小猫                            2                            小狗                            4                            旺财三:排序:    01):     从小到大排序         # 切记。不要给字符串排序, 等后面内置函数的时候         # lst.sort() # 排序. 从小到大. 升序         lst = [1, 2, 4, 21, 4, 2, 22, 123, 4, 68]         lst.sort()         print(lst)         打印结果:[1, 2, 2, 4, 4, 4, 21, 22, 68, 123]     从大到小排序:         lst = [1, 2, 4, 21, 76, 2, 22, 123, 4, 68]         lst.sort(reverse=True)         print(lst)  打印结果:   [123, 76, 68, 22, 21, 4, 4, 2, 2, 1]

         lst = [1, 2, 4, 21, 4, 2, 22, 123, 4, 68]         lst.reverse()   #将列表翻转过来         print(lst)   打印结果:[68, 4, 123, 22, 2, 4, 21, 4, 2, 1]         print(len(lst))  打印结果:10   指列表的元素个数(即 列表的长度)

四:列表嵌套:      lst = [["葫芦娃", "黑猫警长","西游记"], ["武斗乾坤", "wahaha", "斗破苍穹", "盘龙"], ["三体", "明朝那些事儿"]]      将wahaha里面的h改为”恩“      lst[1][1]=lst[1][1].replace("h","恩")        #直接打印print(lst[1][1].replace("h","恩"))  打印结果和原来是一样的,因为原列表下lst[1][1]是一个字符串,        #必须要先将重新改掉的字符串赋给一个新的变量才行。      print(lst)  打印结果:[['葫芦娃', '黑猫警长', '西游记'], ['武斗乾坤', 'wa恩a恩a', '斗破苍穹', '盘龙'], ['三体', '明朝那些事儿']]      # lst[1].insert(1, "大闹天宫") # 对于内部元素如果是可变的数据类型。 直接改就行了

python学习之路---day04的更多相关文章

  1. Python学习之路—————day04

    今日内容: 1. 循环语句 1.1 if判断 1.2 while循环 1.3 for循环 一.if判断 语法一: if 条件 代码块1 代码块2 代码块3 # 例: sex='female' age= ...

  2. python学习之路-day2-pyth基础2

    一.        模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,第三方库存放位置:site-packages sys模块简介 导入模块 import sys 3 sys模 ...

  3. Python学习之路-Day2-Python基础3

    Python学习之路第三天 学习内容: 1.文件操作 2.字符转编码操作 3.函数介绍 4.递归 5.函数式编程 1.文件操作 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个 ...

  4. Python学习之路-Day2-Python基础2

    Python学习之路第二天 学习内容: 1.模块初识 2.pyc是什么 3.python数据类型 4.数据运算 5.bytes/str之别 6.列表 7.元组 8.字典 9.字符串常用操作 1.模块初 ...

  5. Python学习之路-Day1-Python基础

    学习python的过程: 在茫茫的编程语言中我选择了python,因为感觉python很强大,能用到很多领域.我自己也学过一些编程语言,比如:C,java,php,html,css等.但是我感觉自己都 ...

  6. python学习之路网络编程篇(第四篇)

    python学习之路网络编程篇(第四篇) 内容待补充

  7. Python学习之路【第一篇】-Python简介和基础入门

    1.Python简介 1.1 Python是什么 相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是 ...

  8. python 学习之路开始了

    python 学习之路开始了.....记录点点滴滴....

  9. python学习之路,2018.8.9

    python学习之路,2018.8.9, 学习是一个长期坚持的过程,加油吧,少年!

随机推荐

  1. 值得一做》关于一道DP+SPFA的题 BZOJ1003 (BZOJ第一页计划) (normal-)

    这是一道数据范围和评测时间水的可怕的题,只是思路有点难想,BUT假如你的思路清晰,完全了解怎么该做,那就算你写一个反LLL和反SLE都能A,如此水的一道题,你不心动吗? 下面贴出题目 Descript ...

  2. java简单的测试方法执行了多少时间

    (1)以毫秒为单位的 long startTime = System.currentTimeMillis(); // 获取开始时间 // doThing(); // 测试的代码段 long endTi ...

  3. SaeMysql操作示例

    新浪sae的官方说明文档:http://apidoc.sinaapp.com/sae/SaeMysql.html Class SaeMysql 具体实现:http://apidoc.sinaapp.c ...

  4. Spring框架找不到 applicationContext.xml文件,可能是由于applicationContext.xml文件的路径没有放在根目录下造成的

    Spring框架找不到 applicationContext.xml文件,可能是由于applicationContext.xml文件的路径没有放在根目录下造成的

  5. 关于ptrdiff_t

    整除.opencv中的内存一般是通过malloc分配,不能保证都是都能被16整除,此时需要截断,但是剩下的内存要如何维护? CV2.0的这样维护的:在 malloc 是多申请一个指针的空间,这个指针指 ...

  6. Sublime Text notes

    1. 设置在窗口右下方显示文件的编码,在user preferences里加上以下的配置 2.设置用新标签页打开新文件而不是用新窗口打开,将以下配置改为false(默认为true)

  7. 6.python探测Web服务质量方法之pycurl模块

    才开始学习的时候有点忽略了这个模块,觉得既然Python3提供了requests库,为什么多此一举学习这个模块.后来才发现pycurl在探测Web服务器的时候的强大. pycurl是一个用c语言写的l ...

  8. 实践作业3:白盒测试---细化明确任务DAY5

    收到老师给我写的评论,感觉老师真的太认真,每个博客都有仔细的,参考了老师发给我的博客,我才明白老师想要的博客内容原来是具体实际的进展记录.我们组其实这些东西早就确定了,会议也开了,但是我之前不明白博客 ...

  9. Form1调用Unit2类中函数

    Form1有一个button,当Form1.Create时触发Button的OnClick事件,OnClick事件调用Unit2单元中的函数: unit Unit2; interface uses F ...

  10. tomcat的内存配置,关于-Xms -Xmx -XX:PermSize -XX:MaxPermSize的理解和区别

    JVM按照其存储数据的内容将所需内存分配为堆区与非堆区两个部分:所谓堆区即为通过new的方式创建的对象(类实例)所占用的内存空间:非堆区即为代码.常量.外部访问(如文件访问流所占资源)等.然而虽然ja ...