python基础语法

https://docs.python.org/3/library/functions.html 内置的基本函数语法(开发手册)

要求缩进

def构建一个函数

def(x,n):

位置参数x,n

(a,b)

默认按照顺序 把值先后传给x,n

默认函数

c=3

def(x,n=2)这是一个默认函数,当传参数的是一个值的时候,n默认是2,注意默认函数一定要是指向一个不变对象,可以用none

列表当中增加一个参数append()

可变函数

*args

def calc(*num)

这样就是把传入任意个参数

同时也支持调用的时候把list和tuple变成可变参数传入

calc(*num)

关键字参数

**kw 

可以传入0或任意个参数并且自动组装成一个dict

def(name,age,**kw):

命名关键字函数

*,后面是命名的参数,只接收后面有命名的参数

ps *,name,title

递归思想   汉诺塔问题

高级特性

切片 

L[开头下标:结尾后一个的下标:多少个数目取一个的数字]

负数用在从序列尾开始计算的位置

切片操作符中的第一个数(冒号之前)表示切片开始的位置,第二个数(冒号之后)表示切片到哪里结束,第三个数(冒号之后)表示切片间隔数。

迭代

直接试试可不可以直接循环

只要是可迭代对象都是可以直接运行的

列表生成器

list(range(1,11))

[x*x for x in range(1,11)]

[x*x for x in range(1,11) if x%2=0]

使用两层排列生成全排列

[m+n]

生成器 generator 

yield ()两种方法声明

迭代器 Iterator

可以被next不断调出下一个值的叫做迭代器

函数

函数可以直接赋值给变量 函数可以指向变量

所以可以用变量接收函数

def(a,b,c):

return c(a)+c(b)

map函数

map(方法,可迭代对象) 对对象中所有对象方法同时生效

reduce函数

reduce(方法,对象)是对对象当中的逐一生效 不是同时

upper 大写 lower小写

fiter函数

用于过滤序列 只留下满足条件的列表元素

返回函数

匿名函数

不用担心函数名字重复 同时使代码简单

装饰器 __name__

@在某个函数上面 比如

@log

def new()

等于

new=log(new) 即new指向log(new)

偏函数

面向对象编程

几个常见函数

tpye()

isinstance()

dir()

实列属性和类属性

__slots__限制能够绑定的属性

常用的第三方模块

你可能感兴趣的:(python基础语法)