Python01
整数
浮点数
字符串
布尔
空值
变量 动态语言
常量 大写 无法保证不被改变
整数和浮点数大小无限制,
浮点数超出表示为inf
整数除法的结果绝对精准,有正常除法,两个整数相除为浮点数
有地板除,除完为整数,即浮点数的整数部分
浮点数除法会四舍五入,不精确。
字符编码
list
最后一个元素
class[-1]
倒数第二个
class[-2]
可变长度
tuple元组
list []
tuple ()
初始化后不可变
定义一个元素也要加 ,
不可变所以更安全
判断
if xxx:
xxx
elif xxx:
xxx
else:
xxx
if x:
tudo
x 非空,非零,true
循环
for in
while
不要过多使用continue和break
dict
{}
字典,也就是map,键值对
通过'key' in dict
判断key是否存在
空间复杂度高,占空间
key不可变
set
s = set([1,2,3])
无序无重复,输入为 list
hash的key,没有value
所以key不可变
不可变对象
str
可变对象 list
函数
def
pass
占位符
函数参数:
位置参数
abs(x)
默认参数
power(x, n = 2)
,简化函数的调用,写在最后
默认参数必须是不可变对象
不按照顺序写的时候要写参数名
坑:默认参数为可变对象,比如list,在使用默认参数的默认值时,参数的引用不变,但内容发生了变化
可变参数*
实质上是一个元组
定义:sum(*nums)
调用: sum(1,2,3)
sum(1,2)
nums = (1,2)
sum(*nums)```
简化传递参数过程,不用再先写一个容器tuple
###关键字参数**
实质上是dict
定义`person(name, age **extra)`
调用:
`person("liu" 28, city = "beijing", home = "changping")`
或者:
```extra = { city = "beijing", home = "cangping"}
person("liu", 28, **extra)
sys.exit()
numpy安装问题
pip工具
没装
系统装了python3.6
不过这个和pycharm没有关系
pycharm有自己的python
并且要在pycharm里边装numpy
global
声明一个全局变量
尾递归
python没有尾递归
递归
有可能会栈满而溢出