这是我参与更文挑战的第3天,活动详情查看: 更文挑战
在工作中最近要用到python处理数据,用一系列的文章记录一下学习过程。本系列主要还是以大纲的摘要形式呈现,并且以应用为目的。
1.特点
面对初学者友好,学习曲线平缓
- 语法简介
- 支持跨平台
- 支持扩展其它语言
- 源码开放
- 类库丰富
- 解释型、面向对象、动态数据类型高级程序设计语言
2.语法
2.1.书写规则
#
字符用作注释import
或者from...import
来导入相应的模块- 使用缩进来表示代码块,不需要使用大括号 {}
- 单行语句太长,我们可以使用反斜杠
\
来实现多行语句
2.2.数据类型
2.2.1.数值类型(Number)
Python
支持四大数值类型,包括整数int
,浮点数float
,布尔型bool
,复数complex
`
bool
可选项值有True
和False
,非0为True
,0为False
数值类型类型支持以下运算操作:
+
加法-
减法*
乘法/
除法,得到浮点数//
除法,得到整数%
取余**
乘方
注意: 在混合计算时,Python会把整型转换成为浮点数。
2.2.2.序列类型(Sequence)
序列是指它的成员都是有序排列,并且可以通过下标偏移量访问到它的一个或几个成员,
包括字符串
String
、列表List
、元组List
三种类型
概念:
字符串用单引号 ' 或双引号 " 括起来,同时使用反斜杠 ** 转义特殊字符
"123"
字符串元素不可修改
列表是写在方括号 [] 之间、用逗号分隔开的元素列表
[0,"123"]
列表中元素的类型可以不相同,列表中的元素可修改
元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开
("123","456")
元组中的元素类型也可以不相同
序列类型的基本操作包括:
- 成员操作符
[not] in
- 连接操作符
+
- 重复操作符
*
- 切片操作符
[:]
2.2.3.集合类型(Set)
集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。
创建方式:
可以使用大括号 { } 或者 set() 函数创建集合
coll = {value01,value02,...} coll = set(value)
注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
基本功能:
成员关系测试
... in set
集合运算
- 差集
-
- 并集
|
- 交集
&
- 异或
^
- 差集
2.2.3 字典类型(dictionary)
字典是无序的对象集合,字典当中的元素是通过键来存取的
概念:
- 字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合
- 键(key)必须使用不可变类型。在同一个字典中,键(key)必须是唯一的
创建方式:
```
创建一个空的字典,并插入一个键值对
dict = {} dict['key'] = 'value'
创建拥有一个键值对的字典
dict = {'key': 'value'} ```
2.2.4.类型总结
Python3
的六个标准数据类型中:
- 不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
- 可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。
2.2.5.类型判断
内置的 type()
函数可以用来查询变量所指的对象类型,用法如下
```
以下会输出
type("123") ```
此外还可以用isinstance()
进行判断
``` #以下会输出Ture
isinstance(123, int) ```
isinstance
和 type
的区别在于:
type()
不会认为子类是一种父类类型。isinstance()
会认为子类是一种父类类型。
2.2.6. 类型转换
Python
是弱类型语言,支持不同类型进行转换,有几个内置的转换函数,用法如下
```
字符串"123"转换成整型123
int("123") ```