深度学习实战入门第2课


第二课

定义函数

  • def 函数名():

    python
    def add(a,b):
    return a+b


    a,b称为形式参数,

    在调用函数的时候,add(3,5)中,其中3,5被称为实际调用的参数,简称实参。

    在python中,没有return返回值,则为None.

    关键字参数:允许函数调用参数的顺序与定义不一致

    python
    def myPrint(str1,age):
    print(str1,age)
    myPrint("ziwie",27)


    默认参数:缺省参数

    python
    def add(a=1,b):
    return a+b
    add(5)


    不定长参数

    def 函数名(*args,**kwargs)

    一个星号的变量args会存放所有未命名的变量参数,args为元组

    两个星号的kwargs会存放命名参数,即入key=value的参数,kwargs为字典。

    <img src="C:\Users\mhy\AppData\Roaming\Typora\typora-user-images\1570027615895.png" alt="1570027615895" style="zoom:67%;" />

    匿名函数:

    lambda [args1...args2] expression

    python
    sum = lambda args1,args2:args1+args2
    print(sum(10,20))


    回调函数callback function

    面向对象:python中一切皆对象。

    对现实世界的中一类物体的抽象。

    class 类

    attributes 属性

    method 方法

    封装数据:

    数据封装:

    方法封装

    私有属性__name:private

    继承:

    python
    class Cat(object):
    def __init__(self,name,color):
    self.name =name
    self.color = color
    def run(self):
    print(&quot;%s---在跑&quot;%self.name)
    class Bosi(Cat):
    def setNewName(self,newName):
    self.name = newName
    def eat(self):
    print(&quot;%s---在吃&quot;%self.name)


多态:

定义时的类型和运行的类型不一样,此时被称为堕胎,

一个父类有多个子类

python
class People(obejct):
name =&quot;Tom&quot;
__age = 17
p = People()
print(p.name)
print(p.__name)


模块:

import numpy as np

from numpy import asb

文件的打开

python
f = open(&quot;test.txt&quot;,&quot;w&quot;)
f.write(&quot;i am here&quot;)
f.close()
f.read()#读取整个文件,将文件内容放到一个字符串变量中。
f.readline()#readline()方法每次读取一行;返回的是一个字符串对象,保持当前行的内存
f.readlines()#一次性读取整个文件;自动将文件内容分析成一个行的列表。


异常处理

python
try:
1/0
except Exception as e:
print(e)
else:
print(&quot;ok&quot;)


自定义异常raise引发一个异常

python
class shortInputException(Exception):
def __init__(self,length,atleast):
self.length = length
self.atleast = atleast

def main():
try:
s = input(&quot;请输入--->&quot;)
if len(s)&lt;3:
raise ShortInputException(len(s),3)
except Exception as e:
print(e)
else:
print(&quot;没有异常发生&quot;)


生成器:generator

迭代对象,直接作用于for循环的,如list,dict,set,str等

python
from collections import Iterator
a = isinstance([],Iterator)
b = isinstance({},Iterator)


通过iter()函数,将Iterable转化为Iterator()

装饰器

装饰器是程序开发中经常使用的功能。

```python
def foo():
print("foo")
foo
foo()
#

闭包

把一个函数当作参数,返回一个替代版的函数,本质就是返回函数的函数。

def func1():
print("haha")
def outer(func):
def inner():
print("**********")
func()
return inner

```
已邀请:

要回复问题请先登录注册

收藏七月在线,一起向大牛进阶

ctrl+D或command+D可以快速收藏哦~