Python(一)
📚 文档目录
🚀 快速開始 - 📑 主題頁面 - 🛠 主題配置-1 - ⚔️ 主題配置-2 - ❓ 主題問答 - ⚡️ 進階教程 - ✨ 更新日誌 - 🤞 打賞
Python数据类型
- Number(数字)
- String(字符串)
- List(列表)
- Tuple(元组)
- Set(集合)
- Dictionary(字典)
Number(数字)
Python 3 支持 int、float、bool、complex(复数)
在Python 3里,只有一种整数类型 int,表示为长整型,没有 Python 2 中的 Long。
像大多数语言一样,数值类型的赋值和计算都是很直观的。
内置的 type()函数可以用来查询变量所指的对象类型。1
2
3
4
5
6
7print(5 + 4) # 加法
print(4.3 - 2) # 减法
print(3 * 7) # 乘法
print(2 / 4) # 除法,得到一个浮点数
print(2 // 4) # 除法,得到一个整数
print(17 % 3) # 取余
print(2 ** 5) # 乘方
String(字符串)
字符串是 Python 中最常用的数据类型之一,使用单引号或双引号来创建字符串,使用三引号创建多行字符串。但是单引号嵌套单引号或者双引号嵌套双引号就会出现歧义
正确做法print('what is \'your\'name')
List(列表)
List(列表) 是 Python 中使用最频繁的数据类型。
列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。
列表是写在方括号 [ ] 之间、用逗号分隔开的元素列表。
列如print([])
和print(list())
的输出结束都是[ ]
Tuple(元组)
元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开。
元组中的元素类型也可以不相同:1
2
3
4
5
6
7
8
9tuple = ( 'abcd', 786 , 2.23, 'lintcode', 70.2 )
tinytuple = (123, 'lintcode')
print(tuple) # 输出完整元组
print(tuple[0]) # 输出元组的第一个元素
print(tuple[1:3]) # 输出从第二个元素开始到第三个元素
print(tuple[2:]) # 输出从第三个元素开始的所有元素
print(tinytuple * 2) # 输出两次元组
print(tuple + tinytuple) # 连接元组
Set(集合)
集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。
基本功能是进行成员关系测试和删除重复元素。
可以使用大括号 {}
或者 set()
函数创建集合,注意:创建一个空集合必须用 set()
而不是 { },因为 { } 是用来创建一个空字典。
创建格式:
parame = {value01,value02,...}
或者 set(value)
因为集合具有无序性,所以集合本身的输出顺序可能改变,但内容相同
1 | a = set({'Zhihu', 'Baidu', 'Taobao', 'Jiuzhang', 'Google', 'Facebook'}) |
Dictionary(字典)
字典(dictionary)是Python中另一个非常有用的内置数据类型。
列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取
。
字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value)
的集合。键(key)必须使用不可变类型。
在同一个字典中,键(key)必须是唯一
的。1
2
3
4
5
6
7
8
9
10
11
12
13dict = {}
dict['one'] = "远"
dict[2] = "路"
tinydict = {'name': 'lintcode', 'code': 1, 'site': 'www.luyuanly.top'}
print(dict['one']) # 输出键为 'one' 的值
print(dict)
print(dict[2]) # 输出键为 2 的值
print(tinydict) # 输出完整的字典
print(tinydict.keys()) # 输出所有键
print(tinydict.values()) # 输出所有值
字典类型也有一些内置的函数,例如 clear()
、keys()
、values()
等
注意
- 字典是一种映射类型,它的元素是键值对。
- 字典的关键字必须为不可变类型,且不能重复。
- 创建空字典使用 { }。
Python 的类型转换
int
支持转换为 int 类型的,仅有 float、str、bytes,其他类型均不支持
- float -> int
int(float)会去掉小数点及后面的数值,仅保留整数部分。 - str -> int
如果字符串中有数字(0-9)和正负号(+/-)以外的字符,就会报错。 - bytes -> int
如果 bytes 中有数字(0-9)和正负号(+/-)以外的字符,就会报错。
float
支持转换为 float 类型的,仅有 int、str、bytes,其他类型均不支持。
- int -> float
int 转换为 float 时,会自动给添加一位小数。 - str -> float
如果字符串含有正负号(+/-)、数字(0-9)和小数点(.)以外的字符,则不支持转换。 - bytes -> float
如果 bytes 中含有正负号(+/-)、数字(0-9)和小数点(.)以外的字符,则不支持转换。
str
str() 函数可以将任意对象转换为字符串。
- int -> str
int 转换 str 会直接完全转换。 - float -> str
float 转换 str 会去除末位为 0 的小数部分。 - bytes -> str
bytes 和 str 的转换比较特殊点,在 Python 3.x 中,字符串和字节不再混淆,而是完全不同的数据类型。
转换为可执行的表达式字符串:输出结果为:1
2
3
4print(str(b'hello world'))
print(b'hello world'.decode())
print(str(b'hello world', encoding='utf-8'))
print(str(b'\xe4\xb8\xad\xe5\x9b\xbd', encoding='utf-8'))hello world
hello world
中国 - list -> str
会先将值格式化为标准的 list 表达式,然后再转换为字符串。
变量
什么是变量
变量存储在内存中的值,这就意味着在创建变量时会在内存中开辟一个空间。基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。
变量赋值
语法
Python 中的变量赋值不需要类型声明。
每个变量在内存中创建,都包括变量的标识,名称和数据这些信息。
每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。
等号 =
用来给变量赋值。
等号 =
运算符左边是一个变量名,等号 =
运算符右边是存储在变量中的值。
多个变量赋值
Python 允许你同时为多个变量赋值。例如:a = b = c = 1
以上实例,创建一个整型对象,值为 1,三个变量被分配到相同的内存空间上。
您也可以为多个对象指定多个变量。例如:a, b, c = 1, 2, "john"
两个整型对象 1 和 2 分别分配给变量 a 和 b,字符串对象 “john” 分配给变量 c。
命名规则-驼峰命名法
小驼峰命名:第一个单词以小写字母开头,其余单词首字母大写,如:theFirstName
大驼峰命名:所有单词首字母均大写,如:TheFirstName
一般我们定义一个标识符时,通常使用下划线_,如:card_add、card_pop