Python
2017-02-13 00:49:38 50 举报
AI智能生成
python学习
作者其他创作
大纲/内容
数据类型
程序概念层级
表达式:创建处理对象
语句包含表达式
包和模块
程序
变量与存储
变量:对象别名
命名规则
字母/数字/下划线
不能以数字和下划线开头
不能包含空格
避免Python关键字或函数名
简短且具有描述性
区分大小写
创建:第一次赋值时生成
类型
描述数据形态及支持操作
Python动态类型
变量无类型约束
类型取决于关联对象
存储题
对象有类型,存储在内存区域
变量本身无类型
对象本身带有类型描述及引用计数器
共享引用:多个变量引用同一对象
==判断字面值是否相等
is判断引用对象地址是否相同
垃圾回收机制
Python自动释放未被引用的对象
通过对象引用计数器统计引用
内置核心数据类型
数值类型
整形int丨浮点型float
字面值
0b1011(二进制)13
0o177(八进制)127
0x9ff(十六进制)2559
数学运算符
+ 加
- 减
* 乘
** 次方
/ 除
// 整除
% 取余
...
常用函数
int(“字面值”,进制)强转为整形
float(“字面值”)强转为浮点
hex(number)强转为十六进制
oct(number)强转为十进制
bin(number)强转为二进制
工具模块
math
.floor() 坐标轴向下取整
.cell() 坐标轴向上取整
.trunc() 坐标轴向0取整
...
decimal
Decimal
Decimal('0.3')
布尔型的本质
True==1 False==0
序列
可变
list列表
可包含任意对象的有序集合
通过下标索引(位置偏移)访问元素
可变长度,异质,可任意嵌套
支持原位改变
对象引用数组
常用操作
排序
L.sort(key=None,reverse=False)
sorted(t)
通用操作
改变某个元素s[i]=x
改变特定范围内元素值
s[i:j]=t
s[i:j:k]=t
删除元素
del s[i]
del s[i:j]
del s[i:j:k]
s.remove(x) 删除第一个匹配值
s.clear(x) 清空序列
追加元素 s.append(x)
扩展序列 s.extend(x)
插入元素 s.insert(i,x)
检索并删除特定元素 s.pop([x])
反转序列 s.reverse()
复制序列
s.copy()
s[:]
不可变
tuple 元组
可包含任意对象有序集合
通过下标索引(位置偏移)访问元素
固定长度,异质,可任意嵌套
对象引用数组
range 范围
一般用于生成数值序列,以便产生特定次数的循环
文本序列 str 字符串
字面值
'字符串'
"字符串"
"""多行字符串"""
r"\a\b\c" 原始字符串,忽略转义符
转义字符
\n 换行
\t Tab
\\ \
\a 响铃
\b 退格
\r 回车
\'
\"
\? ?
\0 空字符
\ooo 以八进制数声明字符
\xhh 以十六进制数声明字符
序列通用操作
常用操作
str(obj)
str.replace(old,new[count]) 调用方法,修改n个值
str.capitalize() 第一个字母大写
str.upper() 所有字母大写
str.lower() 所有字母小写
str.startswith('str')
str.endswith('str')
str.isnumeric() 判断当前字段是否为数字
str.isalpha() 判断当前字段是否为字母
str.split() 用指定符号分割字符串成列表,为空则将整体作为一个元素
str.join() 替换分隔符号
str.format() 格式化字符串
通用操作
判断元素是否在序列之内
x in s
x not in s
连接序列
s1+s2
重复序列元素
s * n
下标获取元素
s[i]
访问指定元素范围
s[i:j]
按步长访问指定索引范围
s[i:j:k]
获取序列长度
len(s)
获取最小值
min(n)
获取最大值
max(n)
统计总和
sum(n)
检索某个元素第一次出现位置下标
s.index(x)
统计元素出现次数
s.count(x)
集合
映射
dict字典表
特性
通过键(key)而非位置偏移(下标索引)访问数据
可包括任意对象的无序集合
可变长度,异质,可任意嵌套
属"可变映射"分类
对象引用表(Hash Table)
声明
{}空字典表
{key:value}
dict(key=value)
程序单元类型
其他
类型对象 type(obj)
空对象None
布尔 bool
常用
True
False
函数
bool(obj)
真值测试
等同于False
0,0.0
None
' ',( ),[ ]
{ }
文件
声明open('路径','模式',encoding='编码')
路径
'C:\\path\\data.txt'
r'c:\path\data.txt'
'data.txt'
模式
文本
'r' 读
'w' 写
'rw'
'a' 追加
二进制
'*b'
操作
.read()
.seek(n) 移动指针位置
.close() 关闭文件链接
读取
.read(N) 一次性读取所有或指定字符(字节)信息
.readlines() 读取行到列表
.readline() 读取下一行
for line in f : 遍历迭代
写入
.write() 写入字符串
.writelines() 写入多行字符串
.flush() 不关闭文件情况下,内存操作写入磁盘
with + as 语法 不需要调用flush或close直接写入
语句与流程控制
语句
赋值
运行函数
选择执行
迭代语句
循环
函数
模块与命名空间
语法
强制缩进
4个空格
PEP8
赋值语句
机制
赋值创建对象引用
名称创建于首次赋值
名称引用前必须赋值
某些操作会隐形赋值
赋值
基本赋值
元组/列表赋值
(name,age)=('tony',30)
序列赋值
a,*b,c='神罗天征'
多目标赋值
a=b=6
b = 5 , b += 10[b加10]
b==15
顺序执行与输入输出
输入
input('提示信息')
输出
print(sep='丨')分隔符属性(end=',')终止符号
数值格式化输出
print("薪资:{:.2f}"),format(sarlary))=8600.33
print("薪资:{:,.2f}",format(sarlary))=8,600.33
print("薪资:{:12,.2f}",format(sarlary))= 8,600.33
0 条评论
下一页