文章目录
- 0、简介
- value可以是复杂类型
- dict 直接赋值键值对(key,value)
- 删除元素 pop() del
- update更新字典
- in 判断key是否在字典中
- keys()获取所有键
- values()获取所有值
- items()获取所有键值对
- 是否是子集
0、简介
本文内容为 Jupyter Notebook 直接下载为md 生成
从 Jupyter Notebook 角度看
hello
world
3
C:\Users\hanzhuan
- 查看当前目录
E:\data\ProjectData\JupyteNotebook\01-hello
Python之歌
1、Python基础
1.1 Python数值运算
4
2
4
3.3333333333333335
1
8
3
type(varName) 打印类型
int
float
类型转换(几种常见类型)
- int
- float
- str
- bool
1
int
float
123.0
ValueError Traceback (most recent call last)
Input In [28], in <cell line: 1>()
----> 1 float(a_str)ValueError: could not convert string to float: ‘123a’
True
bool
False
True
1.2 基本数值处理 (简单数学函数)
2.6
3
1
6
10.0
1e+101
1024
2、Python字符串
2.1 字符串基本使用
hello python
'hello python ’
'hello python hello python hello python ’
5
2.2 字符串常用操作
split切割 join合并
[‘1’, ‘2’, ‘3’, ‘4’, ‘5’]
[‘1’, ‘2’, ‘3’, ‘4’, ‘5’]
‘1 2 3 4 5’
字符串替换
‘hello world’
‘hello python’
‘hello world’
大小写转换
‘HELLO WORLD’
‘hello world’
strip() 去掉前后空格
‘hello python’
’ hello python ’
'hello python ’
’ hello python’
str.format()
‘han zhu an’
‘an zhu han’
‘10,20,30’
‘han zhu an: 123.500000 985’
3、Python索引
3.1 简单索引
- 从前面是0开始
- 从后面是-1开始
h
z
‘a’
‘n’
‘z’
IndexError Traceback (most recent call last)
Input In [10], in <cell line: 1>()
----> 1 hza[10]IndexError: string index out of range
3.2 切片
[m:n] 表示从索引m到n-1
仍然是: 左闭右开的区间
‘han’
‘zhu’
‘han zhu an’
‘zhu an’
‘han zhu’
‘n zhu a’
‘an’
‘han zhu an’
‘han zhu’
‘han zhu an’
‘hnzua’
4、Python-List 列表
4.1 创建与简单使用
- 通过[]创建一个list结构
- 里面放任何类型都可以,没有一个长度限制
list
[1, 2, 3, 4]
[‘1’, ‘2’, ‘3’, ‘4’]
[1, ‘hza’, 3.5]
<class ‘list’>
[1, 2, 3]
4.2 list常用操作
3
[123, 567, ‘han’, ‘zhu’, ‘an’]
[123, 567, 123, 567]
[123, 567]
123
567
567
IndexError Traceback (most recent call last)
Input In [16], in <cell line: 1>()
----> 1 print(a[2])IndexError: list index out of range
[123, 567]
[456, 567]
[‘han’, ‘zhu’]
[2, 3, 4]
[1, 2, 3, 4, 5, 6, 7]
[1, 2, 3, 4]
True
False
True
True
5、Python-dict 字典
5.1 字典基础
- 就是java/c++ 里的Map
dict
dict
{}
5.2 字典结构操作
key - value
{‘first’: 123}
{‘first’: 123, ‘python’: 456}
456
{‘first’: 123, ‘python’: 789}
{‘han’: 123, ‘zhu’: 456, ‘an’: 789}
KeyError Traceback (most recent call last)
Input In [16], in <cell line: 1>()
----> 1 hza[0]KeyError: 0
value可以是复杂类型
{‘zhuan’: [1, 2, 3], ‘zhuan2’: 3, ‘zhuan3’: ‘4’}
{‘test1’: {‘tang’: 123, ‘yudi’: 456}, ‘test2’: {‘tang2’: 456, ‘yudi2’: 789}}
dict 直接赋值键值对(key,value)
- get获取值
{‘han’: 123, ‘zhuan’: 456}
{‘han’: 124, ‘zhuan’: 456}
124
KeyError Traceback (most recent call
last) Input In [8], in <cell line: 1>()
----> 1 hza[‘an’] KeyError: ‘an’
‘hanzhu’
删除元素 pop() del
{‘han’: 124, ‘zhuan’: 456}
124
{‘zhuan’: 456}
{}
update更新字典
{‘han’: 789, ‘zhuan’: 456, ‘python’: 888}
in 判断key是否在字典中
True
False
keys()获取所有键
{‘han’: 789, ‘zhuan’: 456, ‘python’: 888}
dict_keys([‘han’, ‘zhuan’, ‘python’])
values()获取所有值
dict_values([789, 456, 888])
items()获取所有键值对
dict_items([(‘han’, 789), (‘zhuan’, 456), (‘python’, 888)])
han 789
zhuan 456
python 888
12 0
6、Python 集合
6.1 认识集合
- 元素不重复
{123, 456, 789}
set
{123, 456, 789}
{123, 456, 788, 789}
6.2 集合的操作
- 交 intersection &
- 并 union |
- 差
a并b
- a.union(b)
- a | b
{1, 2, 3, 4, 5}
{1, 2, 3, 4, 5}
a交b
- a.intersection(b)
- a & b
{2, 3, 4}
{2, 3, 4}
a差b
- a.difference(b)
- a - b
- b - a
{1}
{1}
{5}
{5}
集合间关系
是否是子集
- issubset
- <=
True
False
True
False
True
False
add 给集合添加元素
{1, 2, 3}
{1, 2, 3, 4}
{1, 2, 3, 4, 5, 6}
{2, 3, 4, 5, 6}
{3, 4, 5, 6}
7、Python 赋值机制
2040543729840
2040543729840
True
2040629319056
False
- 常量大值一样,id也不一样(内存不一样 比较大的值不可以复用)
- 常量小值一样,id一样(比较小的值可以复用)
2040629319376
2040629318736
2040543537456
2040543537456