变量.函数是Python语言的最基本单元,下面是我作为初学者的当前理解,随着学习的深入今后会做刷新. 变量:表示操作对象是谁. 变量的方法:表示能做什么事情. 如何设计变量:先分析需要解决的问题,基于解决问题的逻辑,来设计变量(这块还没深入,等能力提升后再总结). 变量名称:要有清晰.规范的名称,便于一目了然地理解. 函数: 1.函数的参数是自变量,函数的输出结果(返回值)就是应变量.函数运行的结果用于做进一步的计算 2.函数自变量:可以是从函数外传递给自变量,也可以直接在函数内部赋值 3.根据…
变量是只不过保留的内存位置用来存储值,这意味着,当创建一个变量,那么它在内存中保留一些空间. Python是弱类型,无需明确指定变量类型,赋值的同时会自动声明类型. x = 1 y = 2.0 name = 'Ethon' a = b = c = 1 #多重赋值 A, B, C = 3, 4 , 5 注意以下几点: 1.在Python中是通过对象的引用而不是值来赋值给变量的. 2.赋值操作符主要是"=",同时也可使用增量赋值,如 x+=1,但是没有自增.自减操作符. 3.Python支…
Python中有整数和浮点数,表示方法和C语言一样 浮点数也很像,不过Python可以用单引号把字符串括起来 字符串是以单引号'或双引号"括起来的任意文本,比如'abc',"xyz"等等.请注意,''或""本身只是一种表示方式,不是字符串的一部分,因此,字符串'abc'只有a,b,c这3个字符.如果'本身也是一个字符,那就可以用""括起来,比如"I'm OK"包含的字符是I,',m,空格,O,K这6个字符. 如果字符…
数字常量 如下是python的一些常量表示形式: 2            整数 3.23            浮点数 52.3e-4        科学技术法表示的浮点数 -5 -4.6j        复数 和C类的语法不同的是,Python是内置了复数的. 布尔常量 布尔值的表示方式是True和False 字符串常量 字符串常量有三种表示显示 单引号(') 双引号(") 三引号('''或""") 其中单引号和双引号功能完全相同,和C的双引号表示字符串方式一样…
1.数据类型 字符串 数字 列表 元祖 字典 2.可变不可变划分 可变:列表,字典 不可变:字符串,数字,元祖 举例:字符串,通过id查看字符串变量在内存中的地址.两次存的值不一样,这就说明了内存重新开辟的地址用来存放字符串变量,字符串变量是不可变的. 字典:修改前后地址仍是同一个,可变 3.访问顺序划分 顺序访问:字符串,列表,元祖 映射:字典 直接访问:数字 访问速度,字典要快于列表,元祖,字符串.内存占用,因为字典的映射关系复杂,占用要大于字符串,列表,元祖. 4.存放元素个数划分 容器类…
>>> a = 1 >>> type(a) <class 'int'> >>> b = 1.0 >>> type(b) <class 'float'> >>> c = " >>> type(c) <class 'str'>…
Python使用缩进对齐组织代码的执行,所有没有缩进的代码,都会在载入时自动执行.每个文件(模块)都可以任意写一些没有缩进的代码,并在载入时自动执行.为了区分 主执行代码和被调用文件,Python引入了变量:__name__. 1)当文件是被调用时,__name__的值为模块名: 2)当文件被执行时,__name__的值为 '__main__'. 基于此特性,为测试驱动开发提供了很好的支持,我们可以在每个模块中写上测试代码,这些测试代码仅当模块被Python直接执行时才会运行,代码和测试完美的结…
个人总结: import module,module就是文件名,导入那个python文件 import package,package就是一个文件夹,导入的文件夹下有一个__init__.py的文件, __init__.py可以有两种形式, 一种是直接import多个模块,例如 import fibo import abc 另外一种是 __all__ = ["A","B"] python学习笔记之module && package python的mo…
OpenCV之Python学习笔记 直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看 到一本国外的新书<OpenCV Computer Vision with Python>,于是就看一遍,顺便把自己掌握的东西整合一下,写成学习笔记了.更需要的朋友参考. 阅读须知: 本文不是纯粹的译文,只是比较贴近原文的笔记:         请设法购买到出版社出版的书,支持正版. 从书名就能看出来本书是介绍在Pytho…
[python学习笔记]10.充电时刻 任何python都可以作为模块倒入 *.pyc:平台无关的经过编译的的python文件, 模块在第一次导入到程序中时被执行,包括定义类,函数,变量,执行语句 可以通过modle.func这种方法调用模块中的函数 __name__ 变量: 主程序中的值是__main__,模块中的值是__modlename__ 包是模块所在的目录,必须包含一个命名为__init__ py的文件,文件的内容就是包的内容 包的搜索路径添加 sys.path.append(path…
Python学习笔记,day5 一.time & datetime模块 import本质为将要导入的模块,先解释一遍 #_*_coding:utf-8_*_ __author__ = 'Alex Li' import time # print(time.clock()) #返回处理器时间,3.3开始已废弃 , 改成了time.process_time()测量处理器运算时间,不包括sleep时间,不稳定,mac上测不出来 # print(time.altzone) #返回与utc时间的时间差,以秒…
Python 装饰器的基本概念和应用 代码编写要遵循开放封闭原则,虽然在这个原则是用的面向对象开发,但是也适用于函数式编程,简单来说,它规定已经实现的功能代码不允许被修改,但可以被扩展,即: 封闭:已实现的功能代码块 开放:对扩展开发 装饰器是 Python 高阶函数的语法糖,可以为已经存在的对象添加额外的功能,比如: 引入日志 函数执行时间统计 执行函数前预备处理 执行函数后清理功能 权限校验等场景 缓存 Python 装饰器的基本实现 装饰器的例程: #!/usr/bin/env pytho…
这篇文章主要介绍 Python 中几个常用的高级特性,用好这几个特性可以让自己的代码更加 Pythonnic 哦 1.生成器 什么是生成器呢?简单来说,在 Python 中一边循环一边计算的机制称为 生成器(generator) 生成器最大的优点在于它支持延迟操作,所谓的延迟操作是指在需要的时候才进行运算产生结果 我们可以使用以下两种方法 创建生成器: 生成器表达式 类似于列表生成式,只需将列表生成式中的中括号替换成圆括号即可 >>> gen = (item for item in ra…
一.模块 1.模块的概念 模块这一概念很大程度上是为了解决代码的可重用性而出现的,其实这一概念并没有多复杂,简单来说不过是一个后缀为 .py 的 Python 文件而已 例如,我在某个工作中经常需要打印一段很长的内容,很自然地,我会想到将它实现为一个函数,等到需要的时候直接调用即可,而无需重新再输入这一段内容.现在,假如这样的工作不仅仅是我一个人在做,比如现在有成千上万的人需要在他们的工作打印同样的内容,那么也很自然地,我会将这份代码储存成一个文件发给需要的人.这样就产生了模块的概念,我的这一份…
高阶函数(Higher-order function) Input: 1 abs Output: 1 <function abs> Input: 1 abs(-10) Output: 1 10 abs是函数本书,abs(-10)是函数调用 Input: 12 f = absf Output: 1 <function abs> 变量可以指向函数 Input: 1 f(-10) Output: 1 10 函数名也是变量 函数名其实就是指向函数的变量,对于abs()这个函数,完全可以把a…
Python 学习笔记(下) 这份笔记是我在系统地学习python时记录的,它不能算是一份完整的参考,但里面大都是我觉得比较重要的地方. 目录 Python 学习笔记(下) 函数设计与使用 形参与实参 参数类型 默认值参数 关键参数 可变长度参数 参数传递时的序列解包 结束语句 变量作用域 lambda表达式 高级话题map, reduce等 面向对象程序设计 定义与使用 self 类成员与实例成员 私有成员与公有成员 方法 属性 特殊方法与运算符重载 继承 文件操作 文件对象 文本文件操作案例…
Python 学习笔记(上) 这份笔记是我在系统地学习python时记录的,它不能算是一份完整的参考,但里面大都是我觉得比较重要的地方. 目录 Python 学习笔记(上) 基础知识 基本输入输出 模块导入与使用 __name__属性 编写包 补充 Python序列 列表 创建与删除 元素增加 列表元素的删除 列表元素访问与计数 成员资格判断 切片操作 列表排序 序列操作的常用内置函数 列表推导式!! 元组 序列解包 生成器推导式 字典 字典创建与删除 collections 集合 内置方法so…
经过这几天的折腾,经历了Django的各种报错,翻译的内容虽然不错,但是与实际的版本有差别,会出现各种奇葩的错误.现在终于找到了解决方法:查看英文原版内容:http://djangobook.com/ 加入你使用的是CentOS系统或者Mac,默认版本是2.X,请及时更新版本到3.X 书中是这么说的: You can see that, and Python to be installed. If your system . 对于没有经验的人来说,使用python2.7 ,这是一个陷阱! Dan…
python学习笔记(五岁以下儿童) 深拷贝-浅拷贝 浅拷贝就是对引用的拷贝(仅仅拷贝父对象) 深拷贝就是对对象的资源拷贝 普通的复制,仅仅是添加了一个指向同一个地址空间的"标签",东西都是一样的.改变或者添加,复制出来的变量也会改变 样例: >>> a=[1,2,3] >>> b=a >>> a [1, 2, 3] >>> b [1, 2, 3] >>> a[1]=0 >>>…
Python初识与简介[开篇] Python学习笔记——基础篇[第一周]——变量与赋值.用户交互.条件判断.循环控制.数据类型.文本操作 Python学习笔记——基础篇[第二周]——解释器.字符串.列表.字典.主文件判断.对象 Python学习笔记——基础篇1[第三周]——set集合 Python学习笔记——基础篇2[第三周]——计数器.有序字典.元组.单(双)向队列.深浅拷贝.函数.装饰器 Python学习笔记——基础篇[第四周]——迭代器&生成器.装饰器.递归.算法.正则表达式 Python…
在上篇[Python学习笔记之一]Python关键字及其总结中我提到了yield,本篇文章我将会重点说明yield的用法 在介绍yield前有必要先说明下Python中的迭代器(iterator)和生成器(constructor). 一.迭代器(iterator) 在Python中,for循环可以用于Python中的任何类型,包括列表.元祖等等,实际上,for循环可用于任何“可迭代对象”,这其实就是迭代器 迭代器是一个实现了迭代器协议的对象,Python中的迭代器协议就是有next方法的对象会前…
Python学习笔记(十三): 模块 包 if name == main 软件目录结构规范 作业-ATM+购物商城程序 1. 模块 1. 模块导入方法 import 语句 import module1[, module2[,... moduleN] # 当我们使用import语句的时候,Python解释器通过自己的搜索路径(存在sys.path里)进行搜索 from-import 语句 from modname import name1[, name2[, ... nameN]] # 这个声明不…
Python学习笔记(十四): Json and Pickle模块 shelve模块 1. Json and Pickle模块 之前我们学习过用eval内置方法可以将一个字符串转成python对象,不过,eval方法是有局限性的,对于普通的数据类型,json.loads和eval都能用,但遇到特殊类型的时候,eval就不管用了,所以eval的重点还是通常用来执行一个字符串表达式,并返回表达式的值. 1. 什么是序列化 我们把对象(变量)从内存中变成可存储或传输的过程称之为序列化,在Python中…
Python学习笔记(十一): 生成器,迭代器回顾 模块 作业-计算器 1. 生成器,迭代器回顾 1. 列表生成式:[x for x in range(10)] 2. 生成器 (generator object) 2. 模块 1. OS模块-和操作系统进行交互的模块 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录:相当于shell下cd os.curdir 返回当前目录: ('.') os.p…
Python学习笔记(十): 装饰器的应用 列表生成式 生成器 迭代器 模块:time,random 1. 装饰器的应用-登陆练习 login_status = False # 定义登陆状态 def type(auth_type): # 装饰器传参函数 def login(fucn): # 装饰器函数 def inner(): # 附加功能 global login_status # 将登陆状态变量变为全局变量 if login_status == False: if auth_type ==…
Python学习笔记(九): 装饰器(函数) 内置函数 1. 装饰器 1. 作用域 2. 高阶函数 3. 闭包 如果在一个内部函数里,对在外部作用域(但不是在全局作用域)的变量进行引用,那么内部函数就被认为是闭包(closure). def outer(): x = 10 def inner(): # 条件一:inner是内部函数 print(x) # 条件二:外部环境的一个变量 return inner() # 结论:内部函数inner就是一个闭包 # 两种调用inner的方法 outer()…
Python学习笔记(七): 深浅拷贝 Set-集合 函数 1. 深浅拷贝 1. 浅拷贝-多层嵌套只拷贝第一层 a = [[1,2],3,4] b = a.copy() print(b) # 结果:[1,2],3,4 b[0][0] = 8 print(a) # 结果:[8,2],3,4 print(b) # 结果:[8,2],3,4 原理图: 2. 深拷贝-克隆一份 2. Set-集合 1. 集合的两大作用: 去重 关系测试 # 定义语法 s = set{'alex',1,2} 2. 关系测试…
Python学习笔记(六) Ubuntu重置root密码 Ubuntu 16.4 目录结构 Ubuntu 命令讲解 1. Ubuntu重置root密码 启动系统,显示GRUB选择菜单(如果默认系统启动过程不显示GRUB菜单,则在系统启动时需要长按[Shift]键,显示GRUB界面) 按下[e]键进入命令编辑状态,到 linux /boot/vmlinuz-....... ro recovery nomodeset 所在行,将"ro recovery nomodeset"替换为"…
[python学习笔记]7.更加抽象 类的定义就是执行代码块 在内存保存一个原始实例,可以通过类名来访问 类的实例化,是创建一个原始实例的副本, 并且所有成员变量与原始实例绑定 通过修改实例变量,可以解除与原始实例的绑定 self表示当前实例的引用 成员变量也称为特性 __bases__: 基类 __class__: 对象类型 __dict__: 所有特性 python的接口不用显式的制定对象必须包含哪些方法,只要对象符合当前接口就可以调用 可以对象上通过赋值的方式,创建变量 #!/usr/bi…
[python学习笔记]6.抽象 创建函数: 使用def语句定义函数,不用声明参数类型,和返回值类型 def function_name(param1, param2): 'this is document' pass # fuction body return value # 可选 函数体的第一行字符串被用作文档字符串 callable(func): 用来判读func是否可以调用 help函数用来返回相关函数的文档 函数名可以作为变量赋值一个变量 位置参数:函数调用期间,参数按照参数列表中的顺…