码迷,mamicode.com
首页 > 编程语言 > 详细

Python基础知识(四)

时间:2019-06-11 11:31:15      阅读:97      评论:0      收藏:0      [点我收藏+]

标签:电视   指定   code   切片   pen   对象   返回   区分   type   

Python基础知识(四)

一丶列表

  1. 定义格式:

    是一个容器,由 [ ]表示,元素与元素之间用逗号隔开.

    如:name=["张三","李四"]

  2. 作用:

    存储任意类型的数据 (32位机器能存5亿多,64为机器存储更多)

  3. 特点:

    可变 (增,删,改,查) 默认从左到右 ,从0开始 .

    有序(索引,切片,步长)

  4. 操作:

    增 , 删 , 改 ,查 ,索引,切片,步长 ??

#列表的两种定义方式
    name=["香蕉","西瓜","水蜜桃","桔子",1,2,3]  # 常用
    a=list('abc')      #迭代生成列表 -->['a','b','c']  不常用
    
####增
#append("梨子")  追加 ,追加到列表的末尾.
print(name.append("梨子")) #---> [....(省略),"梨子"]

#insert(索引,"内容") 指定索引位置插入,参数一:索引,参数二:内容,效率低
print(name.insert(1,"苹果")) #-->['香蕉','苹果','西瓜']

#extend() 扩展 迭代添加到列表末尾 ,底层是通过for循环追加
print(name.extend('abc'))#--->[...,'a','b','c']
#底层:for i  in 'abc' : li.append(i)

#列表合并,生成一个新的列表
 a=[1,2,3]
 b=[1,2,3]
 print(a+b) # 列表合并

####删除
#pop() 弹出 ,默认删除最后一个, 唯一能够返回删除内容,
res=name.pop()
print(res) # -->得到删除的内容
print(name.pop(1))# 可以通过删除元素的索引

#remove() 通过删除元素的名字, 删除最左边的,指定一个参数
print(name.remove('香蕉'))

#clear() 清空列表 
print(name.clear()) # -->[]

#del   删除整个列表  , 会出现列表未定义的错误
del name            #删除整个列表 ,列表内存地址也会清理
def name[1]         #删除指定索引的元素
del name[1:3]       #删除区间
del name[1:4:2]     #步长删除

#修改
#按照元素索引修改
name[1]='杏'
print(name[1]='杏')  ---> ['香蕉','杏',...]

#切片修改, 修改的内容可多可少,可指定任意空类型数据
name[1:5]='abc' # -->['香蕉','a','b','c']

#步长修改 (修改几个地方,填充几个数据,修改多少,不能不能少)
name[1:5:2]='你好'    # 迭代修改
name[1:5:2]='你','好'    # 指定修改

#查询
#索引查
print(name[1]) # 查询 索引为1 的数据

# 切片(顾头不顾尾)  以0 开头 ,或者结尾 ,可以忽略不写
print(name[1:3])  #取出前2个
print(name[-1])   #取出最后一个值
                
# for 循环 查看   ,遍历所有内容  . 列表是一个可迭代对象
for i in name:
    print(i)
    
   
####列表的嵌套 采?降维操作.?层?层的看就好. 
li=[1,2,['哈密瓜',['冰水'],],3,['电视','西瓜']]
#取出电视
print(li[4][0])
#取出冰水
print(li[2][1][0])

二丶元组

  1. 定义格式:

    俗称不可变的列表,又称只读列表

    是一个容器,由 ( )表示,元素与元素之间用逗号隔开.

    如:name=("张三","李四")

  2. 作用:

    存储任意类型的数据

  3. 特点:

    不可变 (只能查看) 默认从左到右 ,从0开始 .

    有序(索引,切片,步长)

  4. 操作:

    查 ,索引,切片,步长 ??

####元组
tu2=() # 空元组
print(type(tu2))

####区分  小括号中只有一个元素时,没有逗号,就是元素的本身类型
tu=('syt') # ---->str类型
tu1=(1)    # --->int 类型
tu2=(1,)   # 只有一个元素和逗号 ,也元组类型
print(type(tu),type(tu1),type(tu2))

#索引查看
tu=(1,2,3,4,'str')
print(tu[1])

#for 查询    元组是一个可迭代对象
tu=(1,2,3,4,'str')
for i in tu:
    print(i)
    
#切片,步长查看 
tu = (1, "太?白", "李李?白", "太?黑", "怎么?黑")
print(tu[2:5])  # 切?片之后还是元组

#元组的嵌套
tu=(1,(2,(3,(4,(5,6,7,8),9),10),11),12)
#取出5
print(tu[1][1][1][1][0])
###元组不能修改, BUT元组中的子元素可变,修改的是元组中子元素中的数据规则:

这里元组的不可变的意思是子元素不可变. 而子元素内部的子元素是可 以变, 这取决于子元素是否是可变对象.

#修改的不是元组,而是元组中能够可修改的数据类型中的数据,如列表[]
tu=(1,2,3,['a',['e'],'b'])

tu[3][1][0]='d'
print(tu) # ---->(1, 2, 3, ['a', ['d'], 'b'])

Python基础知识(四)

标签:电视   指定   code   切片   pen   对象   返回   区分   type   

原文地址:https://www.cnblogs.com/dengl/p/11002097.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!