day04 python
 
一.列表
1.什么是列表
    列表是可变的数据类型: 和字符串不同, 做的操作直接改源数据
    列表由[]来表示, 每项元素用逗号隔开.列表什么都能装,能装对象的对象
    列表可以装大量的数据
 
2.列表的索引和切片
    和字符串的索引和切片用法一样    
 
3.列表的增删改查
    增
lst = [1,2,3,4]
lst.append('5')     #追加, 加到最后
print(lst)
 
lst.insert(0, '0')      #插入, 后面的项依次向后移动, 效率低
print(lst)
 
lst.extend(['bajie'])   #扩展, 迭代添加, 根据迭代的对象进行迭代
print(lst)
 
lst.extend('bajie')     #扩展, 迭代添加, 根据迭代的对象进行迭代
print(lst)
    删
print(lst.pop(2))   #弹出index的元素, 默认:删最后一个, 返回pop 删掉的元素
print(lst)
 
print(lst.remove(1))    #删哪个元素, 没有返回值, 如果不存在, 会报错
print(lst)
 
del lst[1]      #切片和索引删
print(lst)
 
lst.clear()     #清空, 结果是空列表
print(lst)
    改
lst[0] = 'bajie'    #索引替换
print(lst)
 
lst[0:2] = ['bajie']      #切片改, 是迭代改
print(lst)
 
lst[0:2] = 'bajie'      #切片改, 是迭代改
print(lst)
 
lst[::2] = ['2','3','4']    #步长不是1时, 要注意改的数和要改的数要一样
print(lst)
  查
lst = ['bajie', 'wukong', 'datang']
for item in lst:
    print(item)
 
4.列表的嵌套
lst1 = [1,2,3]                     #一维
lst2 = [1,2,3,[4,5,6]]             #二维
lst3 = [1,2,3,[4,5,6,[7,8,9]]]     #三维
#lst4 ... ...                      #以此类推
 
print(lst3[3][3][2])               #取到的是 9 , 这种操作叫做降维操作
 
5.列表的其他操作
lst = [2,3,1,6,88,3,3,2,55,9]
 
lst.sort()              #排序. 默认是升序
print(lst)
 
lst.sort(reverse=True)  #排序. 降序
print(lst)
 
lst.reverse()           #反转
print(lst)
 
len(lst)                #求什么的长度
 
二.元组
    只读列表, 只能看,啥都不能干
    使用()表示元组
(1,)     #单元素元组, 要加个逗号
print(tuple())    #空元组, 要这样写
tu = (1, 2, 3, ['1','2'])   #列表虽然是不可变的, 但是里面的元素如果是可变的, 那么这个可变的元素的内容可变
tu[3][0] = 'bajie'        #元组的第一层是不能进行赋值的, 内部元素的内容是没有要求的
print(tu)
    
三.range()
    是一个可迭代对象
for i in range(10):     #默认从 0 开始, 猜不到结尾
    print(i)
for i in range(1,10):   #猜到了开头, 猜不到结尾
    print(i)
for i in range(1,10,2):     #支持步长, 步长也支持负数
    print(i)
lst = ['bajie','wukong','datang','laosha']        # lst 的长度 len(lst)
for i in range(len(lst)):                         # 元素下标从 0 开始, 最后一个下标比 len(lst) 小一个
    print(lst[i])                                 # range() 从0开始, 又不猜最后一个: 所以 range(len(lst)) 迭代出来就对应列表的元素的下标
 
print(range(10))                            #python3 中的range 和python2 中的xrange 是一个东西
>>>range(0, 10)
 
print(range(10))                            #python2 有两个range
>>>[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]        
print(xrange(10))
>>>xrange(10)
 
 
 
 

day04 python列表 元组 range()的更多相关文章

  1. Python—列表元组和字典

    Python-列表元组和字典 列表 元组 字典 列表: 列表是Python中的一种数据结构,他可以存储不同类型的数据.尽量存储同一种类型 列表索引是从0开始的,我们可以通过索引来访问列表的值. 列表的 ...

  2. python列表元组

    python列表元组 索引 切片 追加 删除 长度 循环 包含   定义一个列表 my_list = []     my_list = list()   my_list = ['Michael', ' ...

  3. 巨蟒python全栈开发-第4天 列表&元组&range

    今日内容大纲 1. 什么是列表 定义: 能装对象的对象 在python中使用[]来描述列表, 内部元素用逗号隔开. 对数据类型没有要求 列表存在索引和切片. 和字符串是一样的. 2. 相关的增删改查操 ...

  4. 【277】◀▶ Python 列表/元组/字典说明

    目录: 前言 一.访问列表中的值 二.更新列表 三.删除列表元素 四.Python 列表脚本操作符 五.Python 列表函数 & 方法 参考:Python 列表(List)使用说明 列表截取 ...

  5. Python 列表/元组/字典总结

    序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. Python有6个序列的内置类型,但最常见的是列表和元组. 序列 ...

  6. python3笔记十八:python列表元组字典集合文件操作

    一:学习内容 列表元组字典集合文件操作 二:列表元组字典集合文件操作 代码: import pickle  #数据持久性模块 #封装的方法def OptionData(data,path):    # ...

  7. python笔记(1)--序列(列表 元组 range)

    一.序列分类 1.可变序列:list 2.不可变序列:tuple,range 二.序列公共操作方法 1.操作和返回值 其中s和t代表同类型序列:n,i,j,k为整数:x为任意类型. 序号 操作 结果 ...

  8. python 列表 元组 字典 集合

    列表 lst = [i for i in range(10)] 切片 # 把下标小于2的显示出来 print(lst[:2]) # 把10个数有大到小输出 print(lst[::-1]) # 把下标 ...

  9. Python 列表,元组,字典

    0)字符串切片 py_str = 'python' >>>py_str[0] #取第一个字符串,返回值为"p",超出范围会报错 >>>py_st ...

随机推荐

  1. 2019HDU多校第一场 BLANK DP

    题意:有四种数字,现在有若干个限制条件:每个区间中不同的数字种类必须是多少种,问合法的方案数. 思路: 定义 dp[i][j][k][t] 代表填完前 t 个位置后,{0,1,2,3} 这 4 个数字 ...

  2. @InitBinder 前端传递date时间类型属性时,转换错误问题

    在Controller里加上这段代码 @InitBinder public void initBinder(WebDataBinder binder) { binder.registerCustomE ...

  3. array_shift — 将数组开头的单元移出数组

    <?php $stack = array("orange", "banana", "apple", "raspberry&q ...

  4. String StringBuffer BufferBuilder区别

    String 是一个字符串常量,即该对象一旦被创建之后是不可以进行更改的 StringBuffer StringBuilder 是一个字符串变量 StringBuffer 是非线程安全的 但是Stri ...

  5. BZOJ 4059: [Cerc2012]Non-boring sequences(启发式分治)

    传送门 解题思路 首先可以想到要预处理一个\(nxt_i\)和\(pre_i\),表示前后与当前位置权值相同的节点,那么这样可以迅速算出某个点在某段区间是否出现多次.然后这样的话就考虑分治,对于\([ ...

  6. [CSP-S模拟测试]:抛硬币(DP)

    题目背景 小$A$和小$B$是一对好朋友,他们经常一起愉快的玩耍.最近小$B$沉迷于**师手游,天天刷本,根本无心搞学习.但是小$B$已经入坑了几个月,却一次都没有抽到$SSR$,让他非常怀疑人生.勤 ...

  7. 机器学习算法--Elastic Net

    1) alpha : float, optional Constant that multiplies the penalty terms. Defaults to 1.0. See the note ...

  8. 搭建Linux C语言开发环境

    1.操作系统 Windows操作系统:windows 7 and windows 10 2.开发工具和编译工具 开发工具:notpad++ 和 vim 编译工具:Cygwin64 Terminal 3 ...

  9. 启动项目时,Mysql的连接问题

    1.com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection ...

  10. 修改Mysql procedure,function and view definer

    1 一次性修改遇到错误 update mysql.proc set definer='root@%'; update mysql.proc set definer='root@%'; ERROR 10 ...