【python学习】列表、元组、字典、集合,秋招是不是得到处面试

简介: 【python学习】列表、元组、字典、集合,秋招是不是得到处面试

==,<,>比较运算符与字符串比较大小相似

例:

list1 = [1, 2, 3]
list2 = [1, 2, 3]
print(list1 == list2) # True
print(list1 == [1, 3, 2]) # False(顺序不对)
in 和 not in:判断列表中是否存在指定的元素

例:

print(1 in [1, 2, 3]) #True
print([1, 2] in [1, 2, 3]) # False

列表的嵌套


列表的嵌套指的是一个列表的元素又是一个列表。

schoolNames = [[‘北京大学’,‘清华大学’],
[‘南开大学’,‘天津大学’,‘天津师范大学’],
[‘山东大学’,‘中国海洋大学’]]

二、元组

===============================================================

Python的元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。
tup1 = (‘physics’, ‘chemistry’, 1997, 2000)
tup2 = (1, 2, 3, 4, 5 )
写法2:(不建议)
tup3 = “a”, “b”, “c”, “d”

元组使用规则


1.使用圆括号()表示开始和结束。

2.不同元素以逗号分隔。

3.每个元素的排列是有序号的,元素相同但排列不同的元组属于不同的元组。

4.元组可以使用下标索引来访问元组中的值 。

5.元组不允许修改元组。

tup1 = (12, 34.56)

以下修改元组元素操作是非法的。

tup1[0] = 100

元组的遍历


a_tuple = (1, 2, 3, 4, 5)

for num in a_tuple:

print(num,end=" ") #end指定结尾符,默认回车

a_tuple = (1, 2, 3, 4, 5)

i = 0

while i < len(a_tuple):

print(a_tuple[i],end=" ")

i += 1

元组的内置函数


元组的运算符操作


+:将两个元组中的元素合并在一起产生一个新的元组。(和列表相同)

*:将元组中的元素重复N次,产生一个新的元组

print((1, 2, 3) +(4, 5, 6))

print((1, 2, 3) * 3)

#(1, 2, 3, 4, 5, 6)

(1, 2, 3, 1, 2, 3, 1, 2, 3)

三、字典

===============================================================

字典是一种存储数据的容器,它和列表一样,都可以存储多个数据。

每个元素都是由两部分组成的,分别是键和值。

info = {‘name’:‘张三’, ‘sex’:‘f’, ‘address’:‘北京’}

#‘name’为键,‘张三’为值。

字典使用规则:


1.使用花括号{}表示开始和结束,并且每个元素是以key:value方式成对出现。

2.不同元素以逗号分隔。

3.每个元素的排列是无序的,元素相同但排列不同的字典属于相同的字典。

4.根据键访问值。(注意:如果使用的是不存在的键,则程序会报错。)

info = {‘name’:‘班长’, ‘id’:100, ‘sex’:‘f’, ‘address’:‘北京’}
print(info[‘name’])
print(info[‘address’])

如果我们不确定字典中是否存在某个键而又想获取其值时,可以使用get方法,还可以设置默认值。

info = {‘name’:‘班长’, ‘id’:100, ‘sex’:‘f’, ‘address’:‘北京’}
age = info.get(‘age’)
print(age) #'age’键不存在,所以age为None
age = info.get(‘age’, 18) # 若info不存在’age’,返回默认值18
print(age)
age = info.get(‘age’, ‘索引不存在’)
print(age)

字典的增删改


修改字典的元素
info = {‘name’:‘班长’, ‘id’:100,‘sex’:‘f’, ‘address’:‘北京’}
newId = input(‘请输入新的学号’)
info[‘id’] = int(newId)
print(‘修改之后的id为:%d’ % info[‘id’])

添加新的字典元素

法1:

info = {‘name’:‘班长’, ‘id’:100,‘sex’:‘f’, ‘address’:‘北京’}
newId = input(‘请输入电话’)
info[‘phone’] = newId
print(info)

法2:

#添加方法二:使用update方法添加
info = {‘name’:‘班长’, ‘id’:100,‘sex’:‘f’, ‘address’:‘北京’}
phone_dic = {‘phone’:‘18812345678’}
info.update(phone_dic)
print(info)

删除字典元素
  • del:可删除字典中元素或者删除字典;删除字典后,字典完全不存在了,无法再根据键访问字典的值。

del info['sex'], del info;

  • pop:删除元素并返回value值。info.pop('sex')
  • clear:只是清空字典中的数据,字典还存在,只不过没有元素。 info.clear()

计算字典中键值对的个数


dicts = {‘Name’: ‘Zara’, ‘Age’: 7}
print(“Length : %d” % len (dicts))

获取字典中键的列表


keys()方法返回在字典中的所有可用的键,可通过list(dict.keys())方式转换为列表。

dicts = {‘Name’: ‘Zara’, ‘Age’: 7}
print(dicts.keys())
print(list(dicts.keys())) #可转换为list类型

获取字典中值的列表


values()方法返回在字典中的所有可用的值,同样可通过list()转化为列表

dicts = {‘Name’: ‘Zara’, ‘Age’: 7}
print(dicts.values())
print(list(dicts.values()))#可转换为list类型

计算字典中键值对的个数


items()方法返回字典的(键,值)元组对的列表

dicts= {‘Name’: ‘Zara’, ‘Age’: 7}
print(“Value : %s” % dicts.items())
print(type(list( dicts.items())[0]))
#查看第0个item的类型

字典的遍历


1.遍历字典的键key(直接遍历,不必转换为list)

dicts = {‘Name’: ‘Zara’, ‘Age’: 7}
for key in dicts.keys():
print(key)

2. 遍历字典的值value(不必转换为list)

dicts = {‘Name’: ‘Zara’, ‘Age’: 7}
for value in dicts.values():
print(value)

3. 遍历字典的元素

dicts = {‘Name’: ‘Zara’, ‘Age’: 7}
for item in dicts.items():
print(item)

4. 遍历字典的键值对

dicts = {‘Name’: ‘Zara’, ‘Age’: 7}
for key,value in dicts.items():
print(“key=%s,value=%s”%(key,value))

集合

=============================================================

集合(set)是一个无序的不重复元素序列。对应于数学中集合的概念。

basket = {‘apple’, ‘orange’, ‘apple’, ‘pear’, ‘orange’, ‘banana’}
letters = set([‘apple’, ‘orange’, ‘apple’, ‘pear’, ‘orange’, ‘banana’])

可以使用大括号 { } 或者 set() 函数创建集合;

注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

集合使用规则:


  • 1.使用花括号{}表示开始和结束,并且每个元素是以单个元素方式出现。
  • 2.不同元素以逗号分隔。
  • 3.每个元素的排列是无序的,元素相同但排列不同的集合属于相同的集合。
  • 4.集合中若有重复元素,会自动删除重复值,不会报错。

集合常见操作1


添加元素
thisset = {“Google”, “Runoob”, “Taobao”}


相关文章
|
8月前
|
存储 JavaScript Java
(Python基础)新时代语言!一起学习Python吧!(四):dict字典和set类型;切片类型、列表生成式;map和reduce迭代器;filter过滤函数、sorted排序函数;lambda函数
dict字典 Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。 我们可以通过声明JS对象一样的方式声明dict
460 2
|
9月前
|
存储 JSON 数据管理
Python字典:高效数据管理的瑞士军刀
Python字典基于哈希表实现,提供接近O(1)的高效查找,支持增删改查、遍历、合并等丰富操作,广泛应用于计数、缓存、配置管理及JSON处理。其灵活性与性能使其成为数据处理的核心工具。
732 0
|
9月前
|
存储 缓存 安全
Python字典:从入门到精通的实用指南
Python字典如瑞士军刀般强大,以键值对实现高效数据存储与查找,广泛应用于配置管理、缓存、统计等场景。本文详解字典基础、进阶技巧、实战应用与常见陷阱,助你掌握这一核心数据结构,写出更高效、优雅的Python代码。
252 0
|
存储 人工智能 索引
Python数据结构:列表、元组、字典、集合
Python 中的列表、元组、字典和集合是常用数据结构。列表(List)是有序可变集合,支持增删改查操作;元组(Tuple)与列表类似但不可变,适合存储固定数据;字典(Dictionary)以键值对形式存储,无序可变,便于快速查找和修改;集合(Set)为无序不重复集合,支持高效集合运算如并集、交集等。根据需求选择合适的数据结构,可提升代码效率与可读性。
1107 1
|
JSON 监控 安全
深入理解 Python 的 eval() 函数与空全局字典 {}
`eval()` 函数在 Python 中能将字符串解析为代码并执行,但伴随安全风险,尤其在处理不受信任的输入时。传递空全局字典 {} 可限制其访问内置对象,但仍存隐患。建议通过限制函数和变量、使用沙箱环境、避免复杂表达式、验证输入等提高安全性。更推荐使用 `ast.literal_eval()`、自定义解析器或 JSON 解析等替代方案,以确保代码安全性和可靠性。
705 2
|
存储 iOS开发 MacOS
100 个基本 Python 面试问题第四部分(57-68)
100 个基本 Python 面试问题第四部分
255 0
100 个基本 Python 面试问题第四部分(57-68)
|
监控 大数据 Python
100 个基本 Python 面试问题第七部分(91-100)
100 个基本 Python 面试问题第七部分
354 0
|
存储 Java 测试技术
100 个基本 Python 面试问题第六部分(81-90)
100 个基本 Python 面试问题第六部分
232 0
|
存储 Python
100 个基本 Python 面试问题第五部分(69-80)
100 个基本 Python 面试问题第五部分
266 0
|
存储 JSON 安全
100 个基本 Python 面试问题第三部分(36-56)
100 个基本 Python 面试问题第三部分
223 0

推荐镜像

更多