Python 学习笔记.... 1
一、数据类型.... 1
二、组合数据类型.... 5
三、元组.... 7
四、集合.... 10
五、组合数据类型的高级特性.... 11
六.迭代器生成器.... 14
七、控制语句与函数.... 15
八 函数.... 17
九、模块与包.... 21
十、类和继承.... 24
百度云: 链接:https://pan.baidu.com/s/1jFXOpsgoHwGwO-ITM6oj3Q
提取码:bxc2
- 数据类型 标准库数据类型:必须导入相关模块,并使用模块名对其限定
内置的数据类型
标识符:作为名字的有效字符串集合
关键字
字符串
标识符的命名规则:
- 以字母或下划线-开始
- 除首字母外,后可接 字母、数字、下划线
- 字母区别大小写,不能出现分隔符、标点符号、运算符
- 不要使用Python预定于标识符对自定义的标识符命名(内置类型名 内类函数名 异常名 dir() -builtins- 供检查)
- 避免名称开头和结尾用下划线-
- 内置数据类型 integer(int bool )
浮点型(float complex 以及标准库:decimal.Decimal类型)
字符串
Integral类型 int + —* / abs(x)
Divmod(x,y) 二元组返回X/y的商和余数
Pow(x,y) X的Y次幂
Pow(x,y,z) X的Y次幂%z
Round(x,n) 返回浮点数X 四舍五入的整数
bin(i) 转二进制 Ob
Hex(i) 十六进制 Ox型
Int(i) int (S 字符串,base 进制)
Oct(i) 八进制 Oo
Bool 类型 true 1
False 0
浮点类型 内置 float math.floor() 浮点型转化为最近的整数,仅保留整数
Complex math.ceil() 小数部分向前进位
标准库decimal.Decimal() 使用的时候需要 import decimal 导入模块
from decimal import * from decimal import *
getcontext().prec = 6 from decimal import *
Decimal(1)/Decimal(7) from decimal import *
# 结果为Decimal('0.142857'), from decimal import *
六个有效数字 Decimal('50.5679').quantize(Decimal('0.00'))
# 结果为Decimal('50.57'),结果四舍五入保留了两位小数
小数转分数 float.as_integer_ratio()
>>> n=10
>>> ((n/3)).is_integer()
False
>>> x=0.25
>>> float.as_integer_ratio(x)
(1, 4)
float.hex() 把float以十六进制表示字符串 反之用 float.fromhex()
>>> s=2.25.hex()
>>> f=float.fromhex(s)
>>> t=f.hex()
>>> s
'0x1.2000000000000p+1'
>>> f
2.25
>>> t
'0x1.2000000000000p+1' // 指数使用P进行表示,不使用E 因为其为有效十六进制数字
复数 : x+yj x+yj.conjugate()求其共轭复数
>>> z=-3.2+5.4j
>>> z.real,z.imag
(-3.2, 5.4)
>>> z.conjugate()
(-3.2-5.4j)
(i左移j)
1. 逻辑操作符 | ^ & i<<j >> ~(反转每一位)
赋值逻辑操作符 |= ^= &= <<= >>=
++ -- 自增自减操作 *(指针运算符) &(取地址运算符) sizeof()
4.字符串 (序列) 字符串的比较 比较操作符:< <= == != > >=
单个比较:比较其ASCII 碼
字符 ord() 整数 char() 字 符
多字符比较:比较索引为0开始,依次进行
字符串的方法函数: lower() upper() 函数 转换大小写函数
find() 查找函数
split() 字符串分离
Join() 字符串连接
Replace() 查找替换
strip() 除去字符或者空格
字符串格式转化 :1、常规方法
%[(name)] [flags] [width].[precision] typecode
- 左对齐 小数点后精度
命名 + 右对齐 显示宽度
0 用0填充
>>> print('%10s is %-5d years old'%('jack',25))
jack is 25 years old
1. 格式化字符串函数 str.format() 可接受无限个参数,位置不限
可通过位置、名称、小标、指定进制匹配参数
1. 、字段名
关键词 列表 字典
>>> stock=['paper','notepads','pen']
>>> 'we have {0[0]} and {0[2]} in stocks'.format(stock)
注释:在参数列表中,关键字参数总在位置参数之后
'we have paper and pen in stocks'
>>> d=dict(fruit='apple',color='red')
>>> 'the {0[fruit]} is {0[color]}'.format(d)
'the apple is red'
可以通过内置locas()函数访问,返回一个字典,字典建是局部变量名,字典的值是对变量值的引用,使用映射拆分操作符**,映射与字典中合适的一个键值列表:
>>> animal='elephant'
>>> weight=11000
>>> 'the {animal} weighs {weight}'.format(**locals())
'the elephant weighs 11000'
1. 转换
S 用于强制使用字符串形式 r 强制使用表象形式 a 限于 ASCII 字符,使用表象形式
>>> import decimal
>>> '{0} {0!s} {0!r} {0!a}'.format(decimal.Decimal(2))
"2 2 Decimal('2') Decimal('2')"
1. 格式规约
字符串 引入:
填充字符
对齐方式 左< 中^ 右>
宽度:可选宽度值 最大宽段:句号加宽度
>>> '{:*^20}'.format('centered')
'******centered******'
>>> '{:.20}'.format('left aligned')
'left aligned'
整数 引入:
填充字符
对齐字符 同上,= 数据与填充字符之间的填充
可选符号字符 +必须输出符号 - 只输出负数符号 空格表示为正数时输出空格 为负数时,输出- 最小宽度整数值
进制 显示进制使用#
>>> '[{0:+}] [{1:+}]'.format(12345,-12344)
'[+12345] [-12344]'
>>> '{0:b} {0:o} {0:x} {0:X}'.format(12345678)
'101111000110000101001110 57060516 bc614e BC614E'
>>> '{0:#b} {0:#o} {0:#x} {0:#X}'.format(12345678)
'0b101111000110000101001110 0o57060516 0xbc614e 0XBC614E'
浮点数
与整数一致
区别: 可选最小宽度后面,句号加 整数,规定小数点后面小数位数
>>> import math
>>> amount=(10**4)*math.pi
>>> '[{0:12.2e}] [{0:12.2f}]'.format(amount)
'[ 3.14e+04] [ 31415.93]'
>>> '[{0:*<12.2e}] [{0:*>12.2f}]'.format(amount)
'[3.14e+04****] [****31415.93]'