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=中国上海
目录
打赏
0
0
0
0
11
分享
相关文章
|
3月前
|
在 Python 中,如何将日期时间类型转换为字符串?
在 Python 中,如何将日期时间类型转换为字符串?
148 64
|
2月前
|
Python列表
Python列表。
55 8
[oeasy]python054_python有哪些关键字_keyword_list_列表_reserved_words
本文介绍了Python的关键字列表及其使用规则。通过回顾`hello world`示例,解释了Python中的标识符命名规则,并探讨了关键字如`if`、`for`、`in`等不能作为变量名的原因。最后,通过`import keyword`和`print(keyword.kwlist)`展示了Python的所有关键字,并总结了关键字不能用作标识符的规则。
46 9
[oeasy]python061_如何接收输入_input函数_字符串_str_容器_ 输入输出
本文介绍了Python中如何使用`input()`函数接收用户输入。`input()`函数可以从标准输入流获取字符串,并将其赋值给变量。通过键盘输入的值可以实时赋予变量,实现动态输入。为了更好地理解其用法,文中通过实例演示了如何接收用户输入并存储在变量中,还介绍了`input()`函数的参数`prompt`,用于提供输入提示信息。最后总结了`input()`函数的核心功能及其应用场景。更多内容可参考蓝桥、GitHub和Gitee上的相关教程。
16 0
python--列表list切分(超详细)
通过这些思维导图和分析说明表,您可以更直观地理解Python列表切分的概念、用法和实际应用。希望本文能帮助您更高效地使用Python进行数据处理和分析。
76 14
python--列表list切分(超详细)
通过这些思维导图和分析说明表,您可以更直观地理解Python列表切分的概念、用法和实际应用。希望本文能帮助您更高效地使用Python进行数据处理和分析。
133 10
Python 中别再用 ‘+‘ 拼接字符串了!
通过选择合适的字符串拼接方法,可以显著提升 Python 代码的效率和可读性。在实际开发中,根据具体需求和场景选择最佳的方法,避免不必要的性能损失。
62 5
|
2月前
|
使用Python计算字符串的SHA-256散列值
使用Python计算字符串的SHA-256散列值
72 7
|
3月前
|
在 Python 中,如何将字符串中的日期格式转换为日期时间类型?
在 Python 中,如何将字符串中的日期格式转换为日期时间类型?
62 6
Python中的列表推导式:简洁高效的数据处理
在编程世界中,效率和可读性是代码的两大支柱。Python语言以其独特的简洁性和强大的表达力,为开发者提供了众多优雅的解决方案,其中列表推导式便是一个闪耀的例子。本文将深入探讨列表推导式的使用场景、语法结构及其背后的执行逻辑,带你领略这一特性的魅力所在。

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等