美文网首页
列表,元祖,字典,字符串,公共方法

列表,元祖,字典,字符串,公共方法

作者: 丫甘九 | 来源:发表于2019-11-08 22:10 被阅读0次

列表

列表的定义
  • list(列表)是python中使用最频繁的数据类型,在其它语言中通常叫做数组
  • 专门用于存储一串信息
  • 列表用[]定义,数据之间使用,分隔
  • 列表的索引从0开始
    索引就是数据在列表中的位置编号,索引又可以被称为下标
    注:从列表取值时,如果超出索引范围,程序就会报错

对列表的操作

image.png

从列表中取值和索引、修改指定位置的数据、增加、删除

# 取值和取索引
name_list = ["zhangsan","lisi","wangmazi"]
name_list[0]
name_list[1]
name_list[2]
print(name_list[0],name_list[1],name_list[2])


# 知道数据内容,想确定数据在列表中的位置
# 使用index方法需要注意的是,如果传递的参数不在列表中,那么程序会报错
print(name_list.index("lisi"))


# 修改
name_list[1] = "李四"
print(name_list[1])


# 增加
# append方法可以向列表的末尾追加数据
name_list.append("wangxiaoer")
print(name_list)


# insert方法可以在列表的指定索引位置插入数据
name_list.insert(1,"小美眉")
print(name_list)


# extend方法可以把其他列表中的完整内容,追加到当前列表的末尾
temp_list = ["孙悟空","猪八戒","沙师弟"]
name_list.extend(temp_list)
print(name_list)


# 删除
# renove方法可以从列表中删除指定的数据
name_list.remove("wangmazi")
print(name_list)

# pop方法默认可以把列表中最后一个元素删除
name_list.pop()
print(name_list)

# pop方法可以指定要删除元素的索引
name_list.pop(3)
print(name_list)

# clear方法可以清空列表
name_list.clear()
print(name_list)


# (知道)使用del关键字(delete)删除列表元素
# 在日常开发中,要从列表删除数据,建议使用列表提供的方法
name_list = ["张三","李四","王麻子"]
print(name_list)
del name_list[1]
# 注意,如果使用del关键字将变量从内存中删除
# 后续的代码就不能在使用这个变量了
print(name_list)


# len(length 长度)可以统计列表中元素的总数
name_list = ["张三","李四","王麻子"]
print(name_list)
list_len = len(name_list)
print(list_len)


# count方法可以统计列表中某一个数据出现的次数
name_list = ["张三","李四","王麻子","张三"]
count = name_list.count("张三")
print("张三出现了%d次" %count)


# remove从列表中删除第一次出现的数据,如果数据不会存在,程序会报错
name_list.remove("张三")
print(name_list)
image.png

列表的排序和反转

# sort升序
name_list = ["zhangsan","lisi","wangmazi"]
num_list = [3,4,1,98,6,46,888,555,666,000,999]
name_list.sort()
num_list.sort()
print(name_list)
print(num_list)



# sort降序
name_list.sort(reverse=True)
num_list.sort(reverse=True)
print(name_list)
print(num_list)



# 逆序(反转)
name_list.reverse()
num_list.reverse()
print(name_list)
print(num_list)
image.png

列表的迭代遍历

  • 遍历就是从头到尾从列表中获取数据
  • 在循环体内部针对每一个元素,执行相同的操作
    使用for就能实现迭代遍历
# 使用迭代遍历列表
"""
顺序的从列表中依次获取数据,每一次循环过程中,
数据都会保存在my_name这个变量中,
在循环体体内部可以访问到当前这一次获取到的数据
"""
name_list = ["张三", "李四", "王麻子", "张三"]
for my_name in name_list:
   print("我的名字是%s" % my_name)
image.png

元祖

-(Tuple) 元祖与列表相似,不同之处在于元组的元素不能修改

  • 元祖表示多个元素组成的序列
  • 元祖在python开发中,有特定的应用场景用于储存一串信息,数据之间使用,分隔
  • 元祖用()定义
  • 元祖的索引从0开始

元组变量的定义

# 创建一个空元组
kong_tuple = ()
print(kong_tuple)
# 创建一个只有一个元素的元组,需要在数据后面跟上一个逗号
single_tuole = (5,)
print(single_tuole)
image.png

元组变量的常用操作

# 取值和取索引
info_tuple = ("zhangsan",18,1.75)
print(info_tuple[0])
# 已经知道数据的内容,希望知道该数据在元组中的索引
print(info_tuple.index("zhangsan"))
# 统计计数
print(info_tuple.count("zhangsan"))
# 统计元组中包含的元素的个数
print(len(info_tuple))
image.png

循环遍历元组

  • 在python中,可以使用for循环遍历所有非数字型的变量:列表、元组
    字典、字符串
  • 在实际开发中,除非能够确认元组中的数据类型,否则针对元组的循环遍历需求不是很多
info_tuple = ("zhangsan",18,1.75)
for my_tuple in info_tuple:
    print(my_tuple)
image.png

应用场景

  • 函数的参数和返回值,一个函数可以接收任意多个参数,或者一次返回多个数据
  • 格式字符串,格式化字符串后面的()本质上就是一个元组
  • 让列表可以不被修改

元祖和格式化字符串

print("%s的年龄是%d,身高是%.2f" % ("张三",18,1.78))
info_tuple = ("lisi",19,1.75)
#格式化字符串后面的()本质上就是元组
print("%s的年龄是%d,身高是%.2f" % info_tuple)
image.png

元组和列表之间的转换

info_tuple = ("zhangsan",18,1.75)
num_list = [1,2,3,4,5,6]
tuple = tuple(num_list)
print(tuple)
list = list(info_tuple)
print(list)
image.png

字典

  • 字典是除列表以外在python中最灵活的数据类型
  • 字典同样可以用来存储多个数据
  • 通常用来描述一个物体的相关的信息
  • 和列表的区别
    列表是有序的数据集合
    字典是无序的数据集合
  • 字典用{}定义
  • 字典使用键值对存储数据,键值对之间使用,分隔
  • 键(key)是索引
  • 值(value)是数据
  • 键和值必须使用:分隔
  • 键必须是唯一的
  • 值可以取任何数据类型,但键只能使用字符串、数字、或元组


    image.png
# 通常输出的顺序和定义的顺序是不一致的
zhangsan = {"name":"zhangsan",
            "age":18,
            "gender":True,
            "height":1.75,
            "weight":75.5}
print(zhangsan)
image.png

字典的增删改查

# 取值
# 在取值的时候,如果指定的key不存在,程序会报错
print(zhangsan_dict["name"])
# 增加/修改
# 如果key不存在,会新增键值对
zhangsan_dict["age"] = 18
print(zhangsan_dict)
# 如果key存在,会修改已经存在的键值对
zhangsan_dict["name"] = "lisi"
print(zhangsan_dict)
# 删除
# 在删除指定键值对的时候,如果指定的key不存在,程序会报错
zhangsan_dict.pop("name")
print(zhangsan_dict)
image.png

字典的统计、合并、清空操作

# 统计键值对数量
zhangsan_dict = {"name":"zhangsan",
                 "age":18}
len = len(zhangsan_dict)
print(len)
# 合并字典
temp_dict = {"height":1.75}
zhangsan_dict.update(temp_dict)
print(zhangsan_dict)
# 清空字典
zhangsan_dict.clear()
print(zhangsan_dict)
image.png

字典的循环遍历

zhangsan = {"name":"zhangsan",
             "age":18,
             "gender":True,
             "height":1.75,
             "weight":75.5}
for k in zhangsan:
    print("%s - %s" %(k,zhangsan[k]))

image.png

应用场景

# 使用多个键值对描述一个物体的相关信息——描述更复杂的数据
# 将多个字典放在一个列表中
cart_list = [

    {"name": "zhangsan",
     "age": 18,
     "gender": True,
     "height": 1.75,
     "weight": 75.5},
    {"name": "lisi",
     "age": 20,
     "gender": False,
     "height": 1.60,
     "weight": 42.5},

]
for cart_info in cart_list:
    print(cart_info)
image.png

相关文章

网友评论

      本文标题:列表,元祖,字典,字符串,公共方法

      本文链接:https://www.haomeiwen.com/subject/dgywbctx.html