没有合适的资源?快使用搜索试试~ 我知道了~
首页Python pandas与openpyxl基础操作与转义字符详解
Python pandas与openpyxl基础操作与转义字符详解
需积分: 0 3 下载量 140 浏览量
更新于2024-06-27
收藏 14.58MB PDF 举报
本资源是一份关于Python编程语言中pandas库和openpyxl模块的笔记汇总。首先,笔记介绍了`print()`函数的深入使用,它不仅可以输出数字、字符串以及含有运算符的表达式,还可以将内容定向到显示器或文件。在文件操作方面,通过`open()`函数指定文件路径,并利用`file`参数将输出内容写入`D:/text.txt`,`a+`模式表示以读写方式打开,如果文件不存在则创建,否则在原有内容后追加。此外,还强调了在输出到文件时需要注意文件路径的正确性、使用恰当的文件操作模式以及print()函数的换行与非换行特性。 转义字符是笔记的重要部分,解释了在字符串中遇到反斜杠、单引号、双引号等特殊字符时,如何通过反斜杠进行转义以保持正确的字符串结构。例如,`\n`代表换行符,`\r`代表回车,`\t`是水平制表符,`\b`是退格键。为了保留原字符而不进行转义,可以使用原始字符串前缀`r`或`R`,如`print(r'hello\nworld')`会正确显示带有换行的新行。 通过这份笔记,学习者能够掌握如何在Python中使用pandas处理数据,同时了解如何灵活运用openpyxl进行Excel文件的读写,以及处理字符串时遇到的转义字符问题。这对于进行数据分析和文件操作的Python开发者来说,是一份非常实用的参考资料。
资源详情
资源推荐
1
六、字典
2
3 1
、字典:
Python
内置的数据结构之一,与列表一样是一个可变序列
(
可以进行增删改
)
。
以键值对的方式存储数据,字典是一个无序的序列。
4
如:
scores={'
张三
':100,'
李四
':98,'
王五
':45}
5
6 2
、字典的创建:
7 #
使用
{}
创建
8 scores={'
张三
':100,'
李四
':98,'
王五
':45}
9 print(scores) #
显示:
{'
张三
': 100, '
李四
': 98, '
王五
': 45}
10 print(type(scores)) #
显示:
<class 'dict'>
11
12 #
使用内置函数
dict()
13 student=dict(name='jack',age=20)
14 print(student) #
显示:
{'name': 'jack', 'age': 20}
15
16 #
空字典
17 d={}
18 print(d) #
显示:
{}
19
20 3
、字典中元素获取
21 #[]:scores['
张三
']
22 scores={'
张三
':100,'
李四
':98,'
王五
':45}
23 print(scores['
张三
']) #
显示:
100
24 print(scores['
陈六
']) #
报错:
KeyError
25
26 #get():scores.get('
张三
')
27 scores={'
张三
':100,'
李四
':98,'
王五
':45}
28 print(scores.get('
张三
')) #
显示:
100
29 print(scores.get('
陈六
')) #
显示:
None
30 print(scores.get('
张麻子
',99))
#
显示:
99
。
99
是在查找
'
张麻子
'
所对应的
value
不存在时提供的默认值
31
32 []
取值和
get()
取值的区别:
[]
如果字典中不存在指定的
key
,抛出
keyError
异常。
get()
方法取值,如果字典中不存在指定的
key
,并不会抛出
KeyError
而是返回
None
,可以通过
参数设置默认的
value
,以便指定的
key
不存在时返回。
33
34 4
、字典的常用操作
35 #key
的判断
36 scores={'
张三
':100,'
李四
':98,'
王五
':45}
37 print('
张三
' in scores) #
显示:
True
38 print('
张三
' not in scores) #
显示:
False
39
40 #
字典元素的删除:
41 scores={'
张三
':100,'
李四
':98,'
王五
':45}
42 del scores['
张三
']
43 print(scores) #
显示:
{'
李四
': 98, '
王五
': 45}
44
45 scores.clear() #
清空字典的元素
46 print(scores) #
显示:
{}
47
48 #
字典元素的新增:
49 scores['Jack']=90
GWD的学习笔记
-16-
50 print(scores) #
显示:
{'Jack': 90}
51
52 #
元素的修改
53 scores['Jack']=100
54 print(scores) #
显示:
{'Jack': 100}
55
56 5
、获取字典视图的三个方法:
57 keys():
获取字典中所有的
key
58 values():
获取字典中所有的
value
59 items():
获取字典中所有
key,value
对
60
61 scores={'
张三
':100,'
李四
':98,'
王五
':45}
62 #
获取所有的
key
63 keys=scores.keys()
64 print(keys) #
显示:
dict_keys(['
张三
', '
李四
', '
王五
'])
65 print(type(keys)) #
显示:
<class 'dict_keys'>
66 print(list(keys)) #
显示:
['
张三
','
李四
','
王五
']
将所有的
key
组成的视图转换成列表
67
68 #
获取所有的
value
69 values=scores.values()
70 print(values) #
显示:
dict_values([100, 98, 45])
71 print(type(values)) #
显示:
<class 'dict_values'>
72 print(list(values)) #
显示:
[100, 98, 45]
73
74 #
获取所有的
key-value
对
75 items=scores.items()
76 print(items) #
显示:
dict_items([('
张三
', 100), ('
李四
', 98), ('
王五
', 45)])
77 print(list(items)) #
显示:
[('
张三
', 100), ('
李四
', 98), ('
王五
', 45)]
转换之后的列表元素是由元组组成的。元组
()
78
79 6
、字典元素的遍历:
80 scores={'
张三
':100,'
李四
':98,'
王五
':45}
81 for item in scores:
82 print(item
,
scores[item],scores.get(item))
83 #
显示:
84 '''
张三
100 100
85
李四
98 98
86
王五
45 45'''
87
88 7
、字典的特点:
89
字典中的所有元素都是一个
key-value
对,
key
不允许重复,
value
可以重复
90
字典中的元素是无序的,
#
无法像
list
一样用
insert()
根据
index
的位置插入元素
91
字典中的
key
必须是不可变对象
92
字典也可以根据需要动态的伸缩
93
字典或浪费较大的内存,是一种使用空间换时间的数据结构
94
95 d={'name':'
张三
','name':'
李四
'} #key
不允许重复
96 print(d) #
显示:
['name':'
李四
']
97
98 d={'name':'
张三
','nickname':'
张三
'} #value
可以重复
99 print(d) #
显示:
['name':'
张三
','nickname':'
张三
']
100
GWD的学习笔记
-17-
101 8
、字典生成式
102
内置函数
zip()
:用于将可迭代的对象作为参数,将对象中对应的元素打包成一个元组,
然后返回由这些元组组成的列表
103 {item.upper():price for item,price in zip(items,prices)}
104 item.upper():
表示字典
key
的表达式
105
第一个
price
:表示字典
value
的表达式
106 item
:自定义表示
key
的变量
107
第二个
price
:自定义表示
value
的变量
108 items,prices:
可迭代对象
109
110 items=['fruit','books','others']
111 prices=[96,78,85]
112 d={item:price for item,price in zip(items,prices)}
113 print(d) #
显示:
{'fruit': 96, 'books': 78, 'others': 85}
114 d={item.upper():price for item,price in zip(items,prices)} #upper()
转换成大写
115 print(d) #
显示:
{'FRUIT': 96, 'BOOKS': 78, 'OTHERS': 85}
116
117 lst=zip(items,prices)
118 print(list(lst)) #
显示:
[('fruit', 96), ('books', 78), ('others', 85)]
GWD的学习笔记
-18-
1
七、元组
2
3 1
、定义:
Python
内置的数据结构之一,是一个不可变序列
4
不可变序列:字符串、元组
————
没有增、删、改的操作
5
可变序列:列表、字典
————
可以对序列执行增、删、改操作,对象地址不发生改变
6
7 2
、元组的创建方式:
8 #
直接小括号
()
9 t=('Python','hello',90)
10 print(t) #
显示:
('Python', 'hello', 90)
11
12 #
使用内置函数
13 t=tuple(('Python','hello',90))
14 print(t) #
显示:
('Python', 'hello', 90)
15 print(type(t)) #
显示:
<class 'tuple'>
16
17 #
只包含一个元素的元组需要使用逗号和小括号,不加逗号会被认为本身的数据类型
18 t=('Python',)
19 print(t) #
显示:
<class 'tuple'>
20 print(type(t)) #
显示:
<class 'tuple'>
21
22 #
空元组的创建
23 t1=()
24 t2=tuple()
25 print('
空元组
',t1,t2) #
显示:空元组
() ()
26
27 lst1=[]
28 lst2=list()
29 print('
空列表
',lst1,lst2) #
显示:空列表
[] []
30
31 d={}
32 d1=dict()
33 print('
空字典
',d,d1) #
显示:空字典
{} {}
34
35 3
、为什么将元组设计成不可变序列
36
在多任务环境下,同时操作对象时不需要加锁。因此,在程序中尽量使用不可变序列。
37
38
注意
:
元组中存储的是对象的引用
39
如果元组中对象本身是不可变对象,则不能再引用其他对象
40
如果元组中的对象时可变对象,则可变对象的引用不允许改变,但数据可以改变
41
42 t=(10,[20,30],9)
43 print(t) #
显示:
(10, [20, 30], 9)
44 print(type(t)) #
显示:
<class 'tuple'>
45 print(t[0],type(t[0]),id(t[0])) #
显示:
10 <class 'int'> 140710568593360
46 print(t[1],type(t[1]),id(t[1])) #
显示:
[20, 30] <class 'list'> 1611436585472
47 print(t[2],type(t[2]),id(t[2])) #
显示:
9 <class 'int'> 140710568593328
48
49 print(id(100))
50 #t[1]=100 #
元组不允许修改元素
51 t[1].append(100) #t[1]
是列表,可以增删改数据
52 print(t) #
显示:
(10, [20, 30, 100], 9)
53
GWD的学习笔记
-19-
()
54 4
、元组的遍历
55 t=('Python','world',98)
56 for item in t:
57 print(item) #
换行显示:
Python world 98
58
59
60
61
八、集合
62
63 1
、定义:集合是
Python
语言提供的内置数据结构;与列表、字典一样都属于可变类型的
序列;集合是没有
value
的字典。
64
65 2
、创建方式
66 #
直接
{}
67 s={2,3,4,5,5,6,7,7,} #
集合中的元素不允许重复
68 print(s) #
显示:
{2, 3, 4, 5, 6, 7}
69
70 #
内置函数
set()
71 s1=set(range(6))
72 print(s1,type(s1)) #
显示:
{0, 1, 2, 3, 4, 5} <class 'set'>
73
74 s2=set([1,2,2,3,3,4,5,])
75 print(s2,type(s2)) #
显示:
{1, 2, 3, 4, 5} <class 'set'>
76
77 s3=set((1,2,4,5,65)) #
集合中的元素是无序的
78 print(s3,type(s3)) #
显示:
{65, 1, 2, 4, 5} <class 'set'>
79
80 s4=set('Python')
81 print(s4,type(s4)) #
显示:
{'h', 'n', 'y', 'P', 't', 'o'} <class 'set'>
82
83 s5=set({1,2,45,6,3})
84 print(s5,type(s5)) #
显示:
{1, 2, 3, 6, 45} <class 'set'>
85
86 #
定义空集合
87 s6={} #dict
字典类型
88 print(type(s6)) #
显示:
<class 'dict'>
89 s7=set()
90 print(type(s7)) #
显示:
<class 'set'>
91
92 3
、集合相关操作
93 #
集合元素判断操作:
in
或
not in
94 s={10,20,30,40,50}
95 print(10 in s) #
显示:
True
96 print(100 not in s) #
显示:
True
97
98 #
集合元素的新增:
1
、
add()
方法一次添加一个元素;
2
、
update()
方法一次至少添加一
个元素
99 s={10,20,30}
100 s.add(80)
101 print(s) #
显示:
{80, 10, 20, 30}
102 s.update({100,200,300})
103 print(s) #
显示:
{80, 20, 100, 200, 10, 300, 30}
104 s.update([111,222])
GWD的学习笔记
-20-
剩余148页未读,继续阅读
nalll77
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- 利用迪杰斯特拉算法的全国交通咨询系统设计与实现
- 全国交通咨询系统C++实现源码解析
- DFT与FFT应用:信号频谱分析实验
- MATLAB图论算法实现:最小费用最大流
- MATLAB常用命令完全指南
- 共创智慧灯杆数据运营公司——抢占5G市场
- 中山农情统计分析系统项目实施与管理策略
- XX省中小学智慧校园建设实施方案
- 中山农情统计分析系统项目实施方案
- MATLAB函数详解:从Text到Size的实用指南
- 考虑速度与加速度限制的工业机器人轨迹规划与实时补偿算法
- Matlab进行统计回归分析:从单因素到双因素方差分析
- 智慧灯杆数据运营公司策划书:抢占5G市场,打造智慧城市新载体
- Photoshop基础与色彩知识:信息时代的PS认证考试全攻略
- Photoshop技能测试:核心概念与操作
- Photoshop试题与答案详解
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功