Python 学习---------Day4】的更多相关文章

为什么要设计好目录结构? 参考:http://www.cnblogs.com/alex3714/articles/5765046.html "设计项目目录结构",就和"代码编码风格"一样,属于个人风格问题.对于这种风格上的规范,一直都存在两种态度: 1.一类同学认为,这种个人风格问题"无关紧要".理由是能让程序work就好,风格问题根本不是问题: 2.另一类同学认为,规范化能更好的控制程序结构,让程序具有更高的可读性: 我是比较偏向于后者的,因为…
学习装饰器,首先听haifeng老师讲解了一下准备知识. 1.函数即变量 2.高阶函数+嵌套函数==>装饰器 装饰器的作用是在,1)不改变源代码,2)不改变原函数的调用方式的前提下为函数增加新的功能. 首先学习了最基本的装饰器 使用方法:在原先函数定义的上方加入@wrapper语法糖,等价于 func = wrapper(func) 如果原函数带参数,则在第二层函数加入(*args,**kwargs) 如果装饰器也需要带参数,则需要再次嵌套一层,并且参数传递的顺序为: def deco(args…
day4 知识补充&数据类型:列表,元祖 1.知识补充 1.编译型/解释型 编译型:在代码编写完成之后编译器将其变成另外一个文件教给你算计执行. 代表语言:Java,c,c++ ,c#, Go... 解释型:写完代码后交给解释器,解释器从上到下一行行代码执行:边解释边执行.(实时翻译) 代表语言:python, PHP, JavaScript... 2.代码文档头文件 #!/usr/bin/env python     (解释器路径)​# -*- conding:utf-8 -*-   (默认解…
1.变量的内存管理 cpython解释器垃圾回收机制 什么是垃圾,当一个值身上没有绑定变量名时,(该值的引用计数=0时)就是一个垃圾 age=18 #18的引用计数=1 x=age  #18的引用计数=2 age=19 #18的引用计数=1 del x #删除x的定义,18的引用计数=0 2.变量值具有的三个特点 id 内存地址 type数据类型 值 本身 id相同,值一定相同 值相同,id可以不同 python把常用的小整数型-5-256提前申请好内存地址,方便调用 因为cpu在操作硬件的内核…
json和pickle序列化和反序列化 json是用来实现不同程序之间的文件交互,由于不同程序之间需要进行文件信息交互,由于用python写的代码可能要与其他语言写的代码进行数据传输,json支持所有程序之间的交互,json将取代XML,由于XML格式稍微比较复杂.现在程序之间的交互都是用json来进行文件信息的交互. 在使用json序列化和反序列化的时候,dump一次,就要load一次,不能操作. json序列化的过程,就是写入文件中,让另外一个编程语言进行调用: import json in…
装饰器(http://egon09.blog.51cto.com/9161406/1836763) 1.装饰器:本质是函数: 装饰器(装饰其他函数),就是为其他函数添加附加功能: 原则:1.不能修改被装饰函数的源代码: 2.不能修改被装饰的函数的调用方式: 装饰器对被装饰的函数完全透明的,没有修改被装饰函数的代码和调用方式. 实现装饰器知识储备: 1.函数即“变量”: 2.高阶函数: 3.嵌套函数 高阶函数+嵌套函数=>装饰器 匿名函数(lambda表达式) >>> calc =…
目录 一.迭代器 二.yield生成器 三.装饰器 四.递归 五.基础算法 迭代器 #1.在不使用for循环的情况下 li = [11 ,22, 33, 44] #count = len(li) #start = 0 #while count > start: # print(li[start]) # start += 1 #while 使用索引进行操作,所有的其他预言,都支持while #for item in li: # print(item) #for循环本质 #1.创建一个特殊的东西(迭…
复习 1.变量名命名规范 -- 1.只能由数字.字母 及 _ 组成 -- 2.不能以数字开头 -- 3.不能与系统关键字重名 -- 4._开头有特殊含义 -- 5.__开头__结尾的变量,魔法变量 -- 6.支持大小驼峰,但建议 _ 连接语法 -- 7.尽量见名知意 2.常量:用全大写标示常量,只能自我保障不去修改全大写的变量 3.数据类型 -- int: 存放所有的整型数据 => py2中分 int | long -- float: 存放所有的浮点型数据 => %015.3f -- bool…
列表: 容器性数据 有序  可更改 大量数据 一.增 1.追加    append(objcet) 2.索引增加   Insert(index,元素) 3.迭代追加   extend(object) 都是  列表.方法() #一.增 l = ['zhangsan' , 'lisi' , 'wangwu' , 'zhaoliu' , 'wanger'] #append 追加 后面 l1 = l.append('liuda') print(l1) # 无返回值 none print(l) # l1…
Python学习第四天 一.装饰器 函数调用顺序: 其他高级语言类似,Python 不允许在函数未声明之前,对其进行引用或者调用 高阶函数: 满足下列条件之一就可成函数为高阶函数 某一函数当做参数传入另一个函数中 函数的返回值包含n个函数,n>0 内嵌函数和变量作用域: 定义:在一个函数体内创建另外一个函数,这种函数就叫内嵌函数(基于python支持静态嵌套域) 闭包: 如果在一个内部函数里,对在外部作用域(但不是在全局作用域)的变量进行引用,那么内部函数就被认为是 closure 内嵌函数+高…