type
status
date
slug
summary
tags
category
icon
password
Last edited time
Jun 2, 2024 09:25 AM
数字,字符串,列表,元组,字典,集合
官方文档
0. 本节练习速览
数字类型练习:263. 丑数
字符串练习:2490. 回环句
列表练习:867. 转置矩阵
集合练习:645. 错误的集合
字典练习:2491. 划分技能点相等的团队
综合练习:
数据类型综合练习 (1)1. Python特性
一行代码可以做很多事
使用缩进实现代码块分组
无需预声明变量
单行注释用#
2. 数字 int float
python中数字类型都是无限长的
区分
int()
函数,它可以将float或str转成int类型符号 | 定义 | 备注 |
** | 乘方 | 底数和小数均支持小数 |
/ | 除法 | 返回小数,不会向下取整 |
// | 整除 | 返回整数,会向下取整 |
% | 取余 | 要求操作数两方都是整数 |
数字类型练习:263. 丑数
3. 字符串 str
字符串是不可更改的,即
s[1] = 'a'
是非法的。如果需要修改,应该构建一个新字符串字符串可以用
+
进行连接,注意+
两端都要是字符串类型注意下标不能越界
3.1 切片访问
切片操作是左闭右开的
切片
:
左侧的默认值是0,右侧是字符串长度3.2 常用函数
函数 | 定义 | 备注 |
len(s) | 求字符串长度 | ㅤ |
str1 in s | 判断str1是否是子串 | ㅤ |
max(s)/min(s) | 求排序最大/最小的字符 | ㅤ |
s.islower()/s.isupper() | 判断是否全是小写/大写字符 | ㅤ |
s.isdigit() | 判断是否全是数字 | ㅤ |
s.isalpha() | 判断是否全是字母 | ㅤ |
s.startswith(str1)/s.endwith(str1) | 判断是否由str1开始/结尾 | ㅤ |
s.lower()/s.upper() | 转换成小写/大写 | ㅤ |
s.split(str1, num) | 以str1作为分割线将原始字符串拆分成若干个字符串并组织成列表返回 | num 为分割次数,不指定默认为-1 ,即完全分割 |
s.find(str1,begin,end) | 从左侧查找字符串从指定开始位置到指定结束位置间第一次出现的索引位置 | 如果 begin>end 或者未查询到字符串则返回-1 |
s.rfind(str1,begin,end) | 从右侧查找字符串从指定开始位置到指定结束位置间第一次出现的索引位置 | 同上 |
s.count(str1) | 查询指定字符串在原始字符串中出现的次数 | ㅤ |
s.replace(old_str,new_str,num) | 使用新字符串替换原始字符串中的指定字符串信息 | num 含义:从左到右替换num 次就结束匹配 |
s.strip() | 去除左右两边的空格 | 类似的还有 lstrip() , rstrip() |
3.3 ASCII码
是一种标准的单字节字符编码方案
可以记一些特殊的,比如
'0'
与48
对应,'A'
与65
对应,'a'
与97
对应(大小写相差32)用
ord(ch)
可以返回ch
对应的十进制数,用chr(x)
可以返回x
对应的字符。如ord('9')=57
,chr(67)='C'
字符串练习:2490. 回环句
4. 列表 list
有着和字符串相似的性质,最大的区别在于列表是支持修改的
列表支持嵌套(二维/三维数组)
4.1 切片访问
注意列表可以直接通过切片进行修改
访问方式与字符串切片相同,参考3.1节
4.2 常用函数
函数 | 定义 | 备注 |
len(list) | 求列表长度 | ㅤ |
max(list)/min(list) | 求排序最大/最小的元素 | ㅤ |
sum(list) | 对所有元素求和 | 一定要是数字类型 |
list.append(x) | 将元素 x 加入进列表的尾部 | ㅤ |
list.insert(index, x) | 在 index 插入元素x | ㅤ |
list.remove(x) | 从列表中删除第一个值为 x
的元素 | 如果未找到元素 x ,则抛出异常 |
list.pop(index) | 删除下标为 index 的元素 | 如果未指定 index ,则删除列表最末尾的元素 |
list.index(x,begin,end) | 返回列表指定范围中第一个值为 x 的元素的下标 | begin 和end 都可以缺省,缺省值分别为0 和列表长度,如果指定范围内未找到元素x ,则抛出异常 |
list.count(x) | 返回列表中元素 x 出现的次数 | ㅤ |
list.sort() | 就地排序列表中的元素 | 默认为从小到大排序 |
列表练习:867. 转置矩阵
5. 集合 set
不重复元素组成的无序容器
创建空集合只能用
set()
, 非空集合可以直接用{}
包含元素用
set.add(x)
将元素x
加入set
集合,用x in set
判断元素x
是否在set
集合内支持交
&
,并|
,差-
运算集合练习:645. 错误的集合
6. 字典 dict
键值对的集合,但字典的键必须是唯一的,并且是不可变的(数字,字符串,元组)
可以用
{}
创建一个空字典可以直接通过
[]
访问和赋值,注意访问之前需要判断字典内是否存在对应的键 key in dict
,如果不存在则会抛出异常字典练习:2491. 划分技能点相等的团队
- 作者:ziuch
- 链接:https://ziuch.com/article/Python-Common-Data-Types
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。