2015/8/18 Python基本使用(2)】的更多相关文章

这篇写了忘发.现在补上. Python不是也不大可能成为一种函数式的编程语言,但是它支持许多有价值的函数式编程语言构建.也有些表现的像函数式编程机制但是从传统上也不能认为是函数式编程语言的构建.Python提供的以四中内建函数和lambda表达式的形式出现. 匿名函数与lambda lambda [arg1, [arg2, ... argN]]:expression Python允许用lambda关键字创造匿名函数.匿名是因为不需要以标准的方式来声明.然而,作为函数,它们也能有参数.一个完整的l…
关于判断和循环语句 Python的判断和循环语句非常直观,读起来很接近自然语言. 判断语句if标准的if语句是如下结构: if expression: if_suite 如果expression的表达式非0或者为True,那么if_suite代码块被执行.否则执行下一条语句.同时,Python的条件语句还有else语句. if expression: if_suite else: else_suite 以及elif(else_if)语句 if expression1: if_suite elif…
http://highscalability.com/blog/2015/5/18/how-mysql-is-able-to-scale-to-200-million-qps-mysql-cluster.html…
会议是在昨晚进行的,本来早就应该写博了,可惜今天校园网炸个不停= =.刚修好就赶紧来发博客. 会议基本要素 会议主题:爬虫项目的核心技术讨论以及项目初期的工作分配 会议时间:2015.10.18 19.00-20.30 会议地点:七公寓719寝室 会议人员:符美潇 周文祥 谢金洛 潘礼鹏 焉域政 玉钟焕 会议主要内容 1.对爬虫项目的讨论 这一项目的选择是我们所有组员共同投票的结果.在选定这一项目后的第一次会议中,我们就爬虫这一项目进行了交流和讨论.经过各组员的发言,我了解到我们组员对网络爬虫的…
一个类被定义后,目标就是把它当成一个模块来使用,并把这些对象嵌入到你的代码中去,同其他数据类型及逻辑执行流混合使用.有两种方法可以在你的代码中利用类.第一种是组合,就是让不同的类混合并加入到其他类中,来增强功能和代码重用性.你可以在一个大点的类中创建你自己的类的实例,实现一些其他属性和方法来增强原来的类对象.另一种是派生,通过子类从基类继承核心属性,不断地派生扩展功能实现. 组合举例来说,我们想对之前做过的地址本类作加强性设计.如果在设计的过程中,为names.addresses等创建了单独的类…
# 管道# 数据共享 Manager# 进程池和回调函数 ! # !/usr/bin/env python # !--*--coding:utf-8 --*-- # !@Time :2018/7/18 14:23 # !@Author TrueNewBee # 管道 实现两进程间的信息传递 from multiprocessing import Pipe, Process # 一种使用管道方式 def func(conn3, conn4): conn4.close() # 把多余通道关闭 whi…
类的授权 1.包装包装在Python编程世界中时经常会被提到的一个术语.它是一个通用的名字,意思是对一个已存在的对象进行包装,不管它是数据类型,还是一段代码,可以是对一个已存在的对象,增加新的,删除不要的,或者修改其他已存在的功能.在Python2.2以前,从Python的标准类型子类化或派生类都是不允许的,即使你现在可以这么做,这种做法也并不多.你可以包装任何类型作为一个类的核心成员,以使新对象的行为模仿你想要的数据类型中已存在的行为,并且去掉你不希望存在的行为:它可能会要做一些额外的事情.这…
为什么要创造一个和列表差别不大的容器类型?元组和列表看起来不同的一点是元组用圆括号而列表用方括号.而最重要的是,元组是不可变类型.这就保证了元组的安全性.创造元组给它赋值和列表完全一样.除了一个元素的元组要在元组分割符里加一个逗号以防跟普通的分组操作符混淆. >>> aTuple = (1) >>> aTuple 1 >>> aTuple = (1,) >>> aTuple (1,) 访问元组的值和列表也一样.更新元组和更新字符串一样…
数字提供了标量储存和直接访问,是不可更改类型,每次变更数值会产生新的对象.Python支持多种数字类型,包括整型.长整型.布尔型.双精度浮点.十进制浮点和复数.在Python中,变量并不是一个盒子,而是一个指针指向装变量值的盒子.对于不可更改类型来说,没办法改变盒子的内容,但是可以指向一个新的盒子.我们没办法删除一个数值对象,仅可以不再使用它.内存管理是由Python自己接管的.可以使用del语句来删除引用,但那样的话,这个引用(也就是变量)就不能使用了,除非给它一个新值 >>> ani…
Meeting time: 2015.August.18th 1:00~2:00 Chairperson:  Nikolay Starodubtsev, from Mirantis Meeting summary: 1.Migrating to yaql 1.0 status.    PIC:       Stan Lagun    Status:   The Community decided to fix legacy mode function in yaql. Because the l…
一.什么是函数.方法.过程 推荐阅读:http://www.cnblogs.com/snandy/archive/2011/08/29/2153871.html 一般程序设计语言包含两种基本的抽象:过程抽象和数据抽象.过程抽象有时也称控制抽象. 子程序在1950年以前就发明了,作为一种抽象那时候并未被完全接受.相反,最初它被看做是一种节省代码的机制,但很快子程序就被认可为过程抽象的一种方式.意识到子程序可以作为一种抽象机制,这产生了三个重要结果. 人们发明了一些语言,支持各种参数传递机制 奠定了…
python中至少包括两种错误:语法错误(syntax errors)和异常(exceptions). 1.语法错误   语法错误,也被称作解析错误…
1.“static_cast/强制转换”后普通函数.虚函数的表现 A基类 B子类 实例aPtr:将B实例强制抓换得到的A实例 实例bPtr:将A实例强制转换得到的B实例 总结: (1) aPtr因为是从B实例强制转换过来的,所以虚函数始终调用B的虚函数实现 bPtr因为是从A实例强制转换过来的,所以虚函数始终调用A的虚函数实现 (2) static_cast和强制转换则根据转换后的结果来进行调用 2.sizeof内存对齐 步骤一:结构体内每个变量,有效对齐值=“min(当前位置的变量类型的长度,…
# _author: lily # _date: 2019/1/13 import time import datetime print(help(time)) # print(time.time()) # 1547376144.4092453 时间戳 # time.sleep(3) # print(time.clock()) # print(time.gmtime()) # 结构化时间 time.struct_time(tm_year=2019, tm_mon=1, tm_mday=13, t…
一.pymysql模块1.pymysql是Python中操作MySQL的模块2.执行sql语句(1)连接数据库: import pymysql #连接mysql数据库创建conn对象(host连接的机器,user连接的用户,password连接的密=密码,db连接的数据库 ) conn = pymysql.connect(host=', db='xixi') #创建游标,默认是元组,可以改为字典:conn.cursor(cursor=pymysql.cursors.DictCursor) cur…
在某些情况下,我们需要定义自己的异常并且抛出 先定义一个错误: class MyError(BaseException): def __init__(self): pass 上面定义了一个叫MyError的类,继承自BaseException.在Python中,所有的错误都继承自BaseException,相当于C#中的所有异常都继承自Exception.接下来定义了一个空构造函数. 那么接下来怎样抛出这个异常呢? 在Python中,使用raise关键字,相当于C#中的throw. raise…
一直不是很清楚服务器的定义,对于什么是服务器/客户端架构也只有一个模糊的感觉.最近开始学习,才明白一些什么服务器和客户端的关系. 所谓的服务器,就是提供服务的东西,它是一个硬件或者软件,可以向一个或者多个客户端提供所需要的服务.它存在的目的就是等待客户的请求,然后给客户服务,再接着等待请求. 而客户端,就来连上一个服务器,提出自己的请求,然后等待获得反馈. 比如说,打印机就是一个服务器的例子,与之相连的计算机就是客户端,通过网络连接打印机后,给它提出服务需求(打印)和传输数据(传输内容),然后打…
一.为什么使用异常处理 当程序运行的时候出现了异常,导致程序终止运行,为了解决这种情况,我们需要预先对可能出现的异常进行处理,一旦出现这种异常,就使用另一种方式解决问题,还有就是错误信息是使用者没有必要看到的,他们不需要知道内部错误的原因,所以我们需要友好的显示错误信息,这就需要用到异常处理. 二.简单异常处理 在以下代码里,首先获取用户输入的值,然后到try代码块里,在try代码块里的代码是收到保护的,如果try中的代码发生了异常,就会执行except中的代码. 在try中的代码,如果某一句出…
终于在十一长假之后的两天看完了<Python核心编程>的初级部分.虽然到后来两章,类和环境看得越来越慢,越来越难以理解.很多东西只能靠强记,也没办法真正掌握了,我想了想,还是不强迫自己去背下这些知识,累而且低效.再学习了一次之后,准备跳过去,开始学习后面的高级部分,对于那些知识的掌握,也等到我积累了一些知识后,再作学习.后面两章的笔记做的不全面,很多东西我都没有提及,因为我自己没有真的看懂,将这些东西写出来对于我并没有作用.所以也就不写这部分的基础了.我写了21篇Python基础的随笔.这里有…
在Python中有多种运行外部程序的方法,比如,运行操作系统命令或另外的Python脚本,或执行一个磁盘上的文件,或通过网络来运行文件.这完全取决于想要干什么.特定的环境包括: 在当前脚本继续运行 创建和管理子进程 执行外部命令或程序 执行需要输入的命令 通过网络来调用命令 执行命令来创建需要处理的输出 执行其他的Python脚本 执行一系列动态生成的Python语句 导入Python模块 Python中,内建和外部模块都可以提供上述各种功能.程序员得根据实现的需要,从这些模块中选择合适的处理方…
用特殊方法定制类前面我们讲了方法的两个重要方面:首先,方法必须在调用前被绑定(到它们相应类的某个实例中):其次,有两个特殊方法可以分别作为构造器和解构器的功能,分别名为__init__()和__del__().事实上,__init__()和__del__()只是可自定义特殊方法集中的一部分.它们中有一些有预定义的默认行为,而其他一些则没有,留到需要的时候去实现.这些特殊方法是Python中用来扩充类的强有力的方式,它们可实现:模拟标准类型重载草所附 特殊方法允许类通过重载标准操作符+,*,甚至包…
绑定和方法调用现在我们需要再次阐述Python中绑定(binding)的概念,它主要与方法调用相关联.方法是类内部定义的函数,这意味着方法是类属性而不是实例属性.其次,方法只有在其所属的类拥有实例时,才能被调用.当存在一个实例时,方法才被认为是绑定到那个实例了,没有实例时,方法就是未绑定的.任何一个方法定义中都有一个参数是变量self.它表示调用此方法的实例对象. 核心笔记:self变量用于在类实例方法中引用方法所绑定的实例.方法的实例在任何方法调用中总是作为第一参数传递的,self代表方法的实…
面向对象编程编程的发展已经从简单控制流中按步的指令序列进入到更有组织的方式中,依靠代码块可以形成命名子程序和完成既定的功能.结构化的或过程性编程可以让我们把程序组织成逻辑快,以便重复或重用.创造程序的过程变得更具逻辑性:选出的行为要符合规范,才可以约束创建的数据.迪特尔父子认为结构化编程是“面向行为”的,因为事实上,即使没有任何行为的数据也必须“规定”逻辑性.然而,如果我们能对数据加上动作呢?如果我们所创建和编写的数据片段,是真实生活中实体的模型,内嵌数据体和动作呢?我们通过一系列已定义的接口(…
变量作用域标识符的作用域是定义为其声明的可应用范围,或者即是我们所说的变量可见性.也就是,我们可以在程序的那个部分去访问一个制定的标识符.全局变量与局部变量定义在函数内的变量有局部作用域,在一个模块中最高级别的变量有全局作用域.全局变量的一个特征是除非被删除掉,否则它们将存活到脚本运行结束,且对于所有的函数,他们的值都是可以被访问的,然而局部变量,就像它们存放的栈,暂时地存在,仅仅只依赖于定义它们的函数现阶段是否处于活动.当一个函数调用出现时,其局部变量就进入声明它们的作用域.在那一刻,一个新的…
函数是对程序逻辑进行结构化或过程化的一种编程方法. Python的函数返回值当什么也不返回时,返回了None和大多数语言一样,Python返回一个值或对象.只是在返回容器对象时,看起来像返回多个对象.这样在操作的时候显得很灵活,虽然它本质上只是反悔了一个对象. 调用函数我们用一对圆括号电泳函数.任何输入的参数都应该放在括号中. 关键字参数这个概念是针对函数调用的,比如我们有这样的函数 def fun(value, count): fun_suite 我们可以标准调用: fun(12,20) 也可…
模块是用来组织 Python 代码的方法,而包则是用来组织模块的. 当代码量很大时,我们一般会把代码分成几个有组织的代码段,然后每个代码段之间有一定的联系.代码单之间是共享的,所以Python允许调入一个模块,允许使用其他模块的属性利用之前的工作成果,实现代码重用.那些自我包含并且有组织的代码片段就是模块(module),将其他模块中属性附加到你的模块中的操作较导入(import) 模块是逻辑上的说法,而它们在物理层是一个个独立的文件,模块的文件名就是模块的名字加拓展名.py.与其他可以导入类的…
程序在执行的过程中会产生异常,出现错误在以前的一个时期是致命的,后来随着程序的发展,使得一些错误的处理方式是柔和的,发生错误会产生一些错误的诊断信息和一些模糊的提示.帮助我们来处理异常.今天将学习Python的异常. 程序会有语法或者逻辑上的错误,语法的错误会导致解释器或编译器无法工作,那么程序并U币能执行.而语法正确的情况下,只有逻辑的问题.逻辑的问题分为两种情况,一个是由于不完整或者不合法的输入所致.另一个是逻辑无法生成,计算或者执行,这些错误也叫域错误和范围错误.Python检测到错误时,…
文件对象文件对象不仅可以用来访问普通的磁盘文件,而且也可以访问其它任何类型抽象层面上的“文件”.一旦设置了合适的“钩子”,你就可以访问文件类型接口的其它对象,就好像访问的是普通文件一样.文件对象的处理要以来很多内建函数,还有很多函数会返回文件对象或者是类文件对象.进行这种轴向处理的主要原因是许多输入/输出数据结构更趋向于使用通用的接口.这样就可以在程序行为和实现上保持一致性.文件只是连续的字节序列,数据传输经常会用到字节流,无论字节流是由单个字节还是大块数据组成. 文件内建函数[open()和f…
条件语句Python中的if语句如下: if expression: expr_true_suite 其中expression可以用布尔操作符and, or 和 not实现多重判断条件.如果一个复合语句的的代码块仅仅包含一行代码,那么它可以和前面的语句写在同一行: if expression: dosomething 但实际上,为了可读性,我们尽量不这么做else语句的使用: if expression: expr_true_suite else: expr_false_suite Python…
Python里唯一的映射类型是字典.映射类型对象里,hash值(key)和指向的对象(值)是一对多的关系.字典对象是可变的,这一点上很像列表,它也可以存储任意个数任意类型的Python对象,其中包括容器类型.字典类型和序列类型的区别是存储和访问数据的方式不同.序列类型只用数字类型的键(从序列开始按数值顺序索引.)映射类型的键(key)可以是其他的对象类型(一般是字符串),映射类型的键直接或间接地和存储的数据值相关联.而在映射类型中,数据是无序排列的. 一个字典条目的语法格式是 键:值. 多条字典…