06.容器

1. 字符串

1.1 字符串定义

带引号的内容就是字符串.

在 python 中,字符串可以乘上一个整数, 
字符串 * num

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4ZFE6ZIa-1644806237586)(day03.assets/image-20200929091504501.png)]

在这里插入图片描述

1.2 字符串的输出和输出

# 输入 input()
input() 函数得到的内容就是字符串

# 输出 print() 函数 %s 
f-string 

1.3 下标

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fl8MvZfp-1644806237590)(day03.assets/image-20200929094153410.png)]

1.4 切片

my_str[:]  得到和原来一样的字符串
my_str[::-1]  字符串的逆置

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-miuCCW12-1644806237591)(day03.assets/image-20200929100609347.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-h9KPh5A4-1644806237592)(day03.assets/image-20200929100603929.png)]

1.5 查找方法

find() & rfind()

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZXtM4hV3-1644806237593)(day03.assets/image-20200929104051168.png)]

index & rindex()

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rKJk4h2X-1644806237594)(day03.assets/image-20200929104809098.png)]

count()

在这里插入图片描述

1.6 字符串替换方法 replace

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4OQfpwug-1644806237596)(day03.assets/image-20200929110650386.png)]

1.7 字符串分隔 split()

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1jRyogY0-1644806237597)(day03.assets/image-20200929111640115.png)]

1.8 字符串连接 join()

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nAKpfCyY-1644806237599)(day03.assets/image-20200929112426212.png)]

2. 列表

2.1 列表的定义和基本使用

# 定义空列表
list1=[]
print(list1,type(list1))

list2=list()
print(list2,type(list2))

# 定义非空列表
list3=[1,3.14,"one",[1,2,3,4]]
print(list3)

# 列表支持下标和切片
list4=[1,2,3,4,5,6,7,8,9,10]
#      0 1 2 3 4
#      -5-4-3-2-1
# 通过下标获取列表中的元素
print(list4[-1])
# 使用切片获取子列表
print(list4[:]) # [1, 2, 3, 4, 5]
print(list4[-4:-1]) # [2, 3, 4]
print(list4[::-1]) # [5, 4, 3, 2, 1]
print(list4[::2]) # [1, 3, 5, 7, 9]
print(list4[1::2])# [2, 4, 6, 8, 10]


# list可以通过下标获取元素,并可以修改元素
list1=[1,2,3,4]
list1[0]=100
print(list1)
# 字符串只能通过下标拿元素,不可以改变元素
str1="hello"
str1[0]="yes"
print(str1)

2.2 遍历

'''
列表的遍历
for
while
'''
list1=[1,3.14,"one",True,[1,2,3]]
# 使用for循环遍历
for i in list1:
    print(i) # i:当前循环的变量,表示当前循环的元素

# 使用while循环遍历
i = 0
while i<len(list1):
    print(list1[i])
    i+=1

2.3 向列表中添加数据

# 向列表中添加元素
list1=[1,2,3,5,7,9]
list1.append(10) # 将新添加的内容放置在列表的末端
print(list1)
# 插入
"""
第一个参数:要插入的位置(用内容替换当前位置后续元素向后顺推)
第二个参数表示 要插入的内容
"""
list1.insert(3,4)
print(list1)

"""
列表.extend(可迭代对象)
 将给定迭代对象中的所有元素取出依次放入原list的末尾位置。
"""
list2=["a","b","c"]
list3=[1,2,3]
str1="ABC"

list2.extend(list3)
print(list2)    # ['a', 'b', 'c', 1, 2, 3]
list2.extend(str1)
print(list2)    # ['a', 'b', 'c', 1, 2, 3, 'A', 'B', 'C']

2.4 列表中的数据查询操作

"""
查找:
index(元素) :查询给定元素的位置
"""
list1=[1,2,3,4,5]
print(list1.index(3))

"""
统计:
元素的个数
count(元素)
"""
list2=[1,1,2,1,4,5,6,6,4,6]
num=list2.count(6)
print(num)


"""
判断元素是否存在于list中
in/not in
"""
list3=["a","B","c"]
flag = "a" in list3
flag = "C" not in list3
if flag:
    list3.append("C")
print(flag)
print(list3)

2.5 列表中的删除操作


"""
删除元素
remove
pop
del
"""
# remove(元素) 直接移除,返回值None
list1=[1,2,3,4,5,6,7,8,9,10]
i= list1.remove(5)
print(i)
print(list1)

# pop(下标) 直接删除给定下标的元素,返回已经删除的元素
i=list1.pop(3)
print(i)
print(list1)

# del 列表[下标] 删除给定下标的元素,如果该下标元素不存在,则报错(下标越界)
del list1[10]
print(list1)

2.6 列表排序和逆置

排序的前提是元素数据类型必须保护一致

"""
排序
sort()
"""
list1=[23,1,4,6,2,9,12]
list1.sort()    # 升序
list1.sort(reverse=True)  # reverse 值为True时表示降序
print(list1) #  [1, 2, 4, 6, 9, 12, 23] 自然排序

# 根据字符码值进行自然排序
list2=["a","B","c","A","D"]
list2.sort()
print(list2)

# 逆置
print(list2)
print(list2[::-1])

# 原列表逆置
list2.reverse()
print(list2)

2.7 列表嵌套

"""
列表嵌套
"""
str1="I like python good good study day day up"
list1=str1.split()
list2=str1.split(" ",1)
list3=str1.split(" ",3)

list4=[list1,list2,list3]
print(list4)

# 使用循环嵌套遍历list嵌套
for i in list4:
    for j in i:
        print(j,end=",")
    print()

2.8 案例: 分配办公室

在这里插入图片描述

在这里插入图片描述

3. 元组

"""
元组和列表  相似
不同:
    1.定义:[]  , ()
    2.列表中的数据可以修改,元组不可以修改。
"""
# 定义空元组
tuple2=()
tuple3 = tuple()
print(tuple2)
print(tuple3)

# 定义一个元素的元组,后面必须有一个逗号。
tuple4 = (3)
tuple5 = (3,)
print(tuple4,type(tuple4))
print(tuple5,type(tuple5))

# 非空元组
list1 = [1,3.14,"hello"]
tuple1= (1,3.14,"hello",4,5,6,7,8,8,9)
print(list1)
print(tuple1,type(tuple1))

# 元组也拥有下标,可以使用切片获取子元组
print(tuple1[2])
print(tuple1[3:6:])
print(tuple1[::-1])

# 其他操作与list一样,例如:

# 元组中的内容不可以修改
tuple6 = (1,2,3,4,5)
#tuple6[1]=10
#del tuple6[0]
print(tuple6)

# 遍历
for i in tuple6:
    print(i)

# 查询
print(tuple6.index(2))





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

XYDrestart

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值