一、Python的基本数据类型
整数:int
-
浮点数:float
注意,在其他语言中有:
单精度:float,
双精度:double,
在Python中只有float 布尔型 bool:(True)真 、 (False)假
列表:list
元组:tuple
字典:dict
集合:set
字符串:str
二、基本函数
- 打印输出:print()
- 判断类型:type()
三、运算
注意:在运算中单/得到的回事浮点数,双//才能得到整数(整除)
2/2
1.0
2//2
1
四、进制
1.表示不同的进制
- 二进制表示方式:在前面加上
0b
- 八进制表示方式:在前面加上
0o
- 四六进制表示方式:在前面加上
0x
2.不同进制之间的转换
- 其他进制转换为二进制:
bin()
- 其他进制转换为十进制:
int()
- 其他进制转换为十六进制:
hex()
- 其他进制转换为八进制:
oct()
- 转换为布尔型:
bool()
3.其他函数
查看对应的Assisi码:ord()
五、引号
1.单引号
'Hello World'
2.双引号
"Hello World"
3.三引号
'''
Hello World
Geekln
www.baidu.com
'''
//这个特性用于在IDRE编译器当中
4.转义字符\
,r
不用不同引号嵌套,如果要实现输出类似let’s go这样的字符串时,应该使用转义字符如何实现呢?
//使用 \ 在要转义的字符前加反斜杠
'let\'s go'
输出类似 c:\northwind\northwest 这样的路径时,中间有\n,又改如何实现呢?
//使用 \ 在要转义的字符前加反斜杠
'c:\\northwind\\northwest'
//或者
//使用r 在要输出的字符串前面加上小写字母r
r'c:\northwind\northwest'
注意:r
表示原始字符串,不能用在类似'let's go'
这样有多个引号之前,因为'let's go'
已经不是一个原始字符串了。
六、字符串操作
1.字符串连接
注意:不同于其他编程语言,Python的字符串连接用+
号
"Hello"+"World"
//输出 HelloWorld
2.字符串叠加
"hello"*3
//输出 hellohellohello
注意:字符串之间不能相乘
3.截取字符串中的单个字符
"hello world"[0]
//输出 h
"hello world"[1]
//输出 e
"hello world"[2]
//输出l
注意:这里的下标,也是从0开始从左取值
问题:如果下标输入负数为怎样?
"hello world"[-1]
//输出d
"hello world"[-2]
//输出l
"hello world"[-3]
//输出r
注意:这里负数的1是从字符串最后一个字符第一个开始计算,没有0
4.截取字符串中的多个字符
问题:截取Hello World中的Hello
"Hello World"[0:4]
//输出Hell
"Hello World"[0:5]
//输出Hello
注意:这里的0是起始位置的下标,5是截止位置的下一位的下标,不能是截止位置的下标。
问题:截取中第二个参数是负数会怎么样呢?
"Hello World"[0:-1]
//输出Hello Worl
注意:第二个负数依然会正常取值,不过不会取负数下标的值。
基础:这里的截取方式,称为步长
4.反向截取字符串
问题:截取"Hello World"中的World,使用两种方法
"Hello World"[6:11]
//输出World
"Hello World"[6:]
//输出World
"Hello World"[-5:]
//输出World
七、组(列表)
1.定义列表
[1,2,3,4,5,6,7,8,9]
2.特性
- 列表内的类型是不固定的,内部可以为任意类型;
- 列表内可以嵌套列表(类似数组)
3.访问列表
["张三","李四","王麻子","判官","黑牛"][3]
//输出 '判官'
["张三","李四","王麻子","判官","黑牛"][0]
//输出 '张三'
["张三","李四","王麻子","判官","黑牛"][0:3]
//输出 ['张三', '李四', '王麻子']
["张三","李四","王麻子","判官","黑牛"][-1:]
//输出 ['黑牛']
注意:如果用单一方式访问,将得到字符串;如果用冒号的方式访问,将得到新的列表
4.修改列表里面的值·追加列表
["张三","李四","王麻子","判官","黑牛"]+["王二哈"]
//输出 ['张三', '李四', '王麻子', '判官', '黑牛', '王二哈']
5.修改列表里面的值·叠加列表
["王二哈"]*4
//输出 ['王二哈', '王二哈', '王二哈', '王二哈']
八、组(元组)
1.定义元组
(1,2,3,4,5,6,7,8,9)
注意:元组和列表的操作方法是一样的。
九、 序列、切片
1.基本概念
- str(字符串)、list(列表)、tuple(元组) 都是序列,都有对应的下标序号
- 序列可以
+
和*
-
'HelloWolrd'[2]
、[2,3,4,5,3][2]
、(3,4,5,6,3)[3]
用下标取值,都叫切片
2.判断序列中是否包含某一个元素
3 in [4,2,6,3,5]
//输出 True
10 in [3,4,5,6,7,23,8]
//输出 False
3.判断序列中是否不包含某一个元素
3 not in [4,2,6,3,5]
//输出 False
10 not in [3,4,5,6,7,23,8]
//输出 True
4.判断序列中有多少个元素
len([3,4,5,6,7,8])
//输出 6
5.序列中最大的元素
max([3,4,5,6,7,8])
//输出 8
6.序列中最小的元素
min([3,4,5,6,7,8])
//输出 3
十、无序(集合)
1.定义无序集合
{1,2,3,4,5,6,7,8,9}
2.特点
- 无序集合是没有下标的
- 无序集合不能使用切片
- 元素不会重复, 如果有重复的元素则会被剔除掉
3.集合操作·求差集
问题:从{1,2,3,4,5,6,7,8}中移除{4,5,6}中的元素,然后输出
{1,2,3,4,5,6,7,8} - {4,5,6}
//输出 {1, 2, 3, 7, 8}
4.集合操作·求交集
问题:从{1,2,3,4,5,6,7,8}和{4,5,6}中找出共有的元素,然后输出
{1,2,3,4,5,6,7,8} & {4,5,6}
//输出 {4, 5, 6}
5.集合操作·求合集(并集)
问题:从{1,2,3,4,5,6,7,8}和{4,5,6}合并,不能出现一样的元素,但会出现之前没有的元素
{1,2,3,4,5,6,7,8} | {4,5,6,7,8,9,10}
//输出 {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
6.空集合
type(set())
十一、字典
1.定义字典
{key1:value1,key2:value2}
2.字典特点
- 字典不能有相同的key
- 字典的key必须是不可变的
3.访问字典
{'Q':'星月打击','W':'苍白之瀑','E':'月之降临','R':'月神冲刺'}['Q']
//输出 '星月打击'
4.空字典
type({})
总结·Python基本数据类型
数字(Number)
整型 · int
浮点型 · float
布尔型 · bool
复数 · complex
组
序列
- 字符串 · str 不可变
- 列表 · list 可变
- 元组 · tuple 不可怕
集合 · set
- 无序,没有索引,不能切片
字典 · dict
- key:value 键值对是其最基本的概念