Python【字符串】【列表】【元组】常用操作(三)

简介: Python【字符串】【列表】【元组】常用操作

9.4.5 排序(sort, reverse)


sort方法是将list按特定顺序重新排列,默认为由小到大,参数reverse=True可改为倒序,由大到小。

reverse方法是将list逆置。

a = [1, 4, 2, 3]
a.reverse()
print(a)
a.sort()
print(a)
a.sort(reverse=True)
print(a)
[3, 2, 4, 1]
[1, 2, 3, 4]
[4, 3, 2, 1]

9.5 元组


Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号(),列表使用方括号[],例:

aTuple = ('et',77,99.9)
print(aTuple)
('et', 77, 99.9)

9.5.1 访问元组


aTuple = ('et',77,99.9)
print(aTuple[0])
print(aTuple[1])
et
77

9.5.2 修改元组


aTuple = ('et',77,99.9)
aTuple[0]=111
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-2-5bd230fa08e7> in <module>
      1 aTuple = ('et',77,99.9)
----> 2 aTuple[0]=111
TypeError: 'tuple' object does not support item assignment

从上面的运行结果可以得出: python中不允许修改元组的数据,包括不能删除其中的元素。

9.5.3 元组的内置函数count, index


index和count与字符串和列表中的用法相同

a = ('a', 'b', 'c', 'a', 'b')
a.index('a', 1, 3) # 注意是左闭右开区间
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-3-9f690396d394> in <module>
      1 a = ('a', 'b', 'c', 'a', 'b')
----> 2 a.index('a', 1, 3) # 注意是左闭右开区间
      3 a.index('a', 1, 4)
      4 a.count('b')
      5 a.count('d')
ValueError: tuple.index(x): x not in tuple
a.index('a', 1, 4)
a.count('b')
a.count('d')
0

9.6 字典


字典是一种可变容器模型,且可存储任意类型对象。


字典的每个键值 key=>value 对用冒号 : 分割,每个对之间用逗号(,)分割,整个字典包括在花括号 {} 中 ,格式如下所示:

d = {key1 : value1, key2 : value2, key3 : value3 }

9.6.1 根据键访问值


info = {'name':'学姐', 'id':99999, 'sex':'f', 'address':'中国上海'}
print(info['name'])
print(info['address'])
学姐
中国上海

若访问不存在的键,则会报错在我们不确定字典中是否存在某个键而又想获取其值时,可以使用get方法,还可以设置默认值:

age = info.get('age')
age #'age'键不存在,所以age为None
type(age)
NoneType
age = info.get('age', 18) # 若info中不存在'age'这个键,就返回默认值18
age
18

9.7 字典的常用操作


9.7.1 修改元素字典的每个元素中的数据是可以修改的,只要通过key找到,即可修改,例:


info = {'name':'学姐', 'id':99999, 'sex':'f', 'address':'中国上海'}
info['id'] = 88888
print('修改之后的id为:%d' % info['id'])
修改之后的id为:88888

9.7.2 添加元素使用 变量名[‘键’] = 数据 时,这个“键”在字典中,不存在,那么就会新增这个元素,例:


info = {'name':'学姐', 'id':99999, 'sex':'f', 'address':'中国上海'}
newId = input('请输入新的ID')
info['id'] = int(newId)
print('添加之后的id为:%d' % info['id'])
print(info)
添加之后的id为:121212
{'name': '学姐', 'id': 121212, 'sex': 'f', 'address': '中国上海'}

9.7.3 删除元素对字典进行删除操作,有一下几种:


del

clear()

info = {'name':'学姐', 'id':99999, 'sex':'f', 'address':'中国上海'}
print('删除前,%s' % info['name'])
del info['name']
print('删除后,%s' % info['name'])
删除前,学姐
---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
<ipython-input-12-2de356cae191> in <module>
      2 print('删除前,%s' % info['name'])
      3 del info['name']
----> 4 print('删除后,%s' % info['name'])
KeyError: 'name'

del删除整个字典

info = {'name':'学姐', 'id':99999, 'sex':'f', 'address':'中国上海'}
print('删除前,%s' % info)
del info
print('删除后,%s' % info)
删除前,{'name': '学姐', 'id': 99999, 'sex': 'f', 'address': '中国上海'}
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-13-b6d7faa775d5> in <module>
      2 print('删除前,%s' % info)
      3 del info
----> 4 print('删除后,%s' % info)
NameError: name 'info' is not defined

clear清空整个字典

info = {'name':'学姐', 'id':99999, 'sex':'f', 'address':'中国上海'}
print('清空前,%s' % info)
info.clear()
print('清空后,%s' % info)
清空前,{'name': '学姐', 'id': 99999, 'sex': 'f', 'address': '中国上海'}
清空后,{}

9.7.4 字典的长度


使用len()方法,求字典的长度,例:

info = {'name':'学姐', 'id':99999, 'sex':'f', 'address':'中国上海'}
print('字典的长度:%d' % len(info))
字典的长度:3

9.7.5 找出字典中的所有key


keys返回一个包含字典所有KEY的视图对象,例:

info = {'name':'学姐', 'id':99999, 'sex':'f', 'address':'中国上海'}
dicKeys=info.keys()
print(dicKeys)
print(dicKeys[0])
dict_keys(['name', 'id', 'sex', 'address'])
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-16-a986187e4301> in <module>
      2 dicKeys=info.keys()
      3 print(dicKeys)
----> 4 print(dicKeys[0])
TypeError: 'dict_keys' object is not subscriptable

9.7.6 找出字典所有的value


属性values返回一个包含字典所有value的视图列表,用法同上,例:

info = {'name':'学姐', 'id':99999, 'sex':'f', 'address':'中国上海'}
dicvalues=list(info.values())
print(dicvalues)
print(dicvalues[0])
['学姐', 99999, 'f', '中国上海']
学姐

9.7.7 找出字典的(键,值)


属性items,返回一个包含所有(键,值)元祖的列表

info = {'name':'学姐', 'id':99999, 'sex':'f', 'address':'中国上海'}
dicItems=info.items()
print(dicItems)
dict_items([('name', '学姐'), ('id', 99999), ('sex', 'f'), ('address', '中国上海')])

9.7.8 判断key是否存在


“key in dict"如果键在字典dict里返回true,否则返回false,例:

info = {'name':'学姐', 'id':99999, 'sex':'f', 'address':'中国上海'}
ss='name' in info
print(ss)
True

9.7.9 遍历字典的几种方式


1) 遍历字典的key(键)

info = {'name':'学姐', 'id':99999, 'sex':'f', 'address':'中国上海'}
for key in info.keys():
    print(key)
name
id
sex
address

2) 遍历字典的value(值)

info = {'name':'学姐', 'id':99999, 'sex':'f', 'address':'中国上海'}
for key in info.values():
    print(key)
学姐
99999
f
中国上海

3) 遍历字典的项(元素)

info = {'name':'学姐', 'id':99999, 'sex':'f', 'address':'中国上海'}
for item in info.items():
    print(item)
('name', '学姐')
('id', 99999)
('sex', 'f')
('address', '中国上海')

4) 遍历字典的key-value(键值对)

info = {'name':'学姐', 'id':99999, 'sex':'f', 'address':'中国上海'}
for key, value in info.items():
    print("key=%s,value=%s" % (key, value))
key=name,value=学姐
key=id,value=99999
key=sex,value=f
key=address,value=中国上海
相关文章
|
1天前
|
存储 大数据 数据处理
Python 中的列表推导式与生成器:特性、用途与区别
Python 中的列表推导式与生成器:特性、用途与区别
8 2
|
18小时前
|
存储 自然语言处理 Java
【Python】列表和元组
【Python】列表和元组
9 0
|
1天前
|
Python
Python操作:字符串--列表--元组--字典--运算符 (一)
Python操作:字符串--列表--元组--字典--运算符 (一)
|
1天前
|
Python
Python操作:字符串--列表--元组--字典--运算符 (二)
Python操作:字符串--列表--元组--字典--运算符 (二)
10 0
|
14天前
|
Python
python推导式-列表,元组,字典,集合推导式
这篇文章介绍了Python中的推导式,包括列表推导式、元组推导式、字典推导式和集合推导式,提供了它们的基本格式和示例代码,并解释了推导式如何简化循环和条件判断的代码编写。
|
2月前
|
存储 索引 Python
Python学习笔记----列表、元组和字典的基础操作
这篇文章是一份Python学习笔记,涵盖了列表、元组和字典的基础操作,包括它们的创建、修改、删除、内置函数和方法等。
Python学习笔记----列表、元组和字典的基础操作
|
2月前
|
存储 Python
Python 中的列表和元组
【8月更文挑战第29天】
25 1
|
2月前
|
Python
Python多维列表(元组)合并成一维形式
Python多维列表(元组)合并成一维形式
17 2
|
2月前
|
存储 索引 Python
五:《Python基础语法汇总》— 列表&元组&集合
本篇文章讲解了关于列表;元组和集合这三个基本数据类型的常用方法与函数。及同一性操作符;成员判断符;浅拷贝与深拷贝等多方面的知识点
26 4
|
3月前
|
存储 缓存 测试技术
Python列表与元组
【7月更文挑战第26天】Python 中的列表(List)和元组(Tuple)是两种常用的数据结构,它们都可以用来存储一系列的元素。虽然它们在某些方面相似,但也有一些重要的区别。在本文中,我们将分享一些 Python 中列表和元组的操作技巧,帮助您更好地理解它们的用法和特性。
34 4