Python学习(2)

来源:互联网 发布:软件贵金属喊单室 编辑:程序博客网 时间:2024/05/21 18:34
字典的遍历:两种方式
dic1 = {'name':'liberyu','age':21,'gender':'male'}for x in dic1:    print dic1[x]#得到的结果是liberyu 21 male (无序)#第二种方式for k,v in dic1.items():    print(k,v)#得到结果:name liberyu  age 21 gender male (这三者无序)
#其中k显示的是key,v显示的是value

range: range(4)

            结果为 0,1,2,3  没有终值,且默认初始值从零开始

函数调用:

                 对于形参的设定默认值时一定是从右往左设定,如果调用函数时没有实参对函数进行参数传递,则函数自己用设定的默认值对其进行操作

def add(x = 1,y = 2)    c = x + y    return c'''def add(x = 1,y)    c = x + y    return c这样只设定一个默认值是有错误的(语法错误)'''
def add(x ,y = 2)    c = x + y    return c#这样的设定默认值没错

全局变量和局部变量:

x = 'liberyu'#在函数定义之前的变量为全局变量def add(a,b):    x = a + b    return x#定义的函数中的局部变量x虽然和上边的全局变量重名,但是内容不一


python 中的yield:

一个带有 yield 的函数就是一个 generator,它和普通函数不同,生成一个 generator 看起来像函数调用,

但不会执行任何函数代码,直到对其调用 next()(在 for 循环中会自动调用 next())才开始执行。虽然执行流程仍按函数的流程执行,

但每执行到一个 yield 语句就会中断,并返回一个迭代值,下次执行时从 yield 的下一个语句继续执行。

看起来就好像一个函数在正常执行的过程中被 yield 中断了数次,每次中断都会通过 yield 返回当前的迭代值。

截取自链接:https://www.ibm.com/developerworks/cn/opensource/os-cn-python-yield/

对比生成器generator 和列表解析,参考链接:http://www.cnblogs.com/cotyb/p/5260032.html

tf.shape(a) 和 a.get_shape()的差别,参考链接:http://blog.csdn.net/chenxieyy/article/details/53020760