- 博客(21)
- 收藏
- 关注
原创 Python_day11--异常处理(捕获异常、抛出异常)
一、抛出一个错误码在程序运行的过程中,如果发生了错误,可以事先约定返回一个错误代码,这样,就可以知道是否有错,以及出错的原因。在操作系统提供的调用中,返回错误码非常常见。比如打开文件的函数 open() ,成功时返回文件描述符(就是一个整数),出错时返回 -1。 用错误码来表示是否出错十分不便,因为函数本身应该返回的正常结果和错误码混在一起,造成调用者必须用大量的代码来判断是否出...
2018-05-31 20:04:14 2074
原创 Python——day11--anaconda的安装以及使用
一、什么是ananconda anaconda指的是一个开源的python发行版本,其包含了conda、Python等180多个科学包及其依赖项。因为包含了大量的科学包,Anaconda 的下载文件比较大(约 515 MB),如果只需要某些包,或者需要节省带宽或存储空间,也可以使用Miniconda这个较小的发行版(仅包含conda和 Python)。二、安装anaconda1、从官网下载Lin...
2018-05-30 16:37:21 363
原创 Python_day10--format
一、format函数format是python2.6新增的一个格式化字符串的方法,相对于老版的%格式方法,它有很多优点。 1.不需要理会数据类型的问题,在%方法中%s只能替代字符串类型 2.单个参数可以多次输出,参数顺序可以不相同 3.填充方式十分灵活,对齐方式十分强大 4.官方推荐用的方式,%方式将会在后面的版本被淘汰1、通过位置来填充字符...
2018-05-23 20:54:37 175
原创 Python_day10--面向对象--@property
一、私有属性如果有一个对象,当需要对其进行修改属性时,有2种方法:(1)对象名.属性名=数据---->直接修改(2)对象名.方法名()----->间接修改为了更好的保障属性安全,不能随意修改,一般处理方式为:(1)将属性定义为私有属性(2)添加一个可以调用的方法,供调用,也就是间接调用属性class Student(object): def __init__(self, nam...
2018-05-23 19:21:42 213
原创 Python_day09--面向对象(三)---魔术方法
一、构造器和析构器__init__(self[, ...])构造器,当一个实例被创建的时候调用的初始化方法__del__(self)析构器,当一个实例被销毁的时候调用的方法 每个人都知道一个最基本的魔术方法,__init__。通过此方法我们可以定义一个对象的初始操作。然而,当我调用x = Student() 的时候, __init__ 并不是第一个被调用的方法。实际上,还有一个叫做 __new_...
2018-05-23 16:43:16 212
原创 Python_day09--面向对象(二)---继承和多态
一、引例--乌龟吃鱼利用上一节课我们学到的知识,我们可以写一个简单的乌龟吃鱼的游戏,规则如下:1、游戏背景为10*10的方格内2、游戏开始自动生成10条鱼和一只乌龟3、他们的移动方向是随机的4、乌龟的最大移动能力是2,上下左右均可移动2格以内5、鱼的最大移动能力为1,上下左右移动均为1格6、当乌龟移动到边界时,自动反向移动7、乌龟的初始体能为100,200为上限;每次移动需要消耗一点体力8、当乌龟...
2018-05-23 11:13:28 281
原创 Python_day09--面向对象编程(一)--类和实例
一、面向对象的概念 面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类创建出来的一个个具体的“对象”,每个对象都拥有相同的方法,但各自的数据可能不同。1、创建一个类以Student类为例,在Python中,定义类是通过 class 关键字:class Student(object): pass...
2018-05-22 19:25:42 252
原创 Python_练习
第一题:1. 创建add_log装饰器,被装饰的函数日志信息被记录到/var/log/python.log文件中;2. 日志格式为: [字符串时间] Level: 日志级别 Name: 函数名称, Runtime:xxx Result:xximport timeimport functools# 需求: 编写一装饰器timeit, 用来装饰某函数执行时间的装饰器;def timeit(f...
2018-05-18 13:35:24 255
原创 Python_day08--文件的读写__with
一、with语法一般情况打开一个文件,经过操作之后,都要显式的执行xx.close() 将文件关闭 。with 用于需要打开、关闭成对的操作,可以自动关闭打开对象 .with open('/tmp/passwd','w') as f: print(f.closed) print(f.write('hello'))print(f.closed)我们能看到with语句只对他内部的...
2018-05-17 19:26:09 223
原创 Python_day08--文件的操作--open
一、文件的读写读写文件是最常见的IO操作。Python内置了读写文件的函数,用法和C是兼容的。读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘,所以,读写文件就是请求操作系统打开一个文件对象(通常称为文件描述符),然后,通过操作系统提供的接口从这个文件对象中读取数据(读文件),或者把数据写入这个文件对象(写文件)。1、读文件f =...
2018-05-17 17:41:02 196
原创 Python_day07--装饰器-(多个装饰器的执行顺序、及应用)
一、多个装饰器的执行顺序前面我们说到了装饰其的用法,以及他的作用;可是在工作中我们经常能看到装饰器可能不止使用一次,在同一个函数下我们有可能加上好几个装饰器,那他们的运行机制:例:def decorator_a(func): print('count 1') def inner_a(*args, **kwargs): print('count 2') ...
2018-05-16 20:43:15 1922
原创 Python_day07--装饰器(一般用作时间装饰、密码验证等)
一、高阶函数的返回值为函数--初识装饰器通过上一节的学习我们了解了,当我们定义一个函数的def时,它的return值一般为一个数值或是一个运算表达式,但是在我们的学习过程中会发现一些问题,当我们已经写好的一段代码并且逻辑非常绕,但是现在需要我们对他做一些改动时你会发现完全无从下手,只要改变之前的代码就会报错,并且是接踵而至麻烦不断。所以我们这里就要引进一个更方便更快捷---------装饰器1、什...
2018-05-16 15:02:27 1016 1
原创 Python_day06--高阶函数-map、reduce、filter、sorted、lambda
一、高阶函数高阶函数: 实参可以是一个函数; 返回值可以是一个函数;一般函数返回值都为一个数值,例如:def a(a,b,c): return 1print(a(1,2,3)) 函数定义: def 函数名(形参): def add(a, b,c): 函数体 return 返回值 return 1 调用函数; 函数名...
2018-05-15 21:14:20 285
原创 Python--itchat and qrcode
一、itchat模块简介 itchat是一个开源的微信个人号接口,使用python调用微信从未如此简单。使用不到三十行的代码,你就可以完成一个能够处理所有信息的微信机器人。当然,该api的使用远不止一个机器人,更多的功能等着你来发现,比如这些。该接口与公众号接口itchatmp共享类似的操作方式,学习一次掌握两个工具。如今微信已经成为了个人社交的很大一部分,希望这个项目能够帮助你扩展你的个人...
2018-05-15 16:17:07 993 1
原创 Python_day06--生成器Generators、生产消费者模型、协程、迷你机器人
一、生成器1、生成器前面一章我们说过列表生成器;li = [i for i in range(30) if i%2==0]得到下面的结果;我们遍历1~30,找出其中的所有偶数,输出的结果为一个列表;如果我们用生成式再呈现一次呢;g = (i for i in range(100) if i%2==0)我们能看到,生成器的返回值不在是 一个列表,而是一个生成器,我们不能直接打印,而是需要去遍历这...
2018-05-10 15:57:40 222
原创 Python_day05--集合、列表、字典生成式、迭代
一、列表生成式列表生成式,是Python内置的一种极其强大的生成list的表达式。1、举个简单的例子:在1~10中随机的取10个数子import randomli = []for i in range(10): li.append(random.randint(1,10))print(li)我们看到上面的代码并不陌生,随机取10个数字并且添加到列表li中,我们不妨简化代码量,能否在...
2018-05-10 10:04:05 414
原创 Python_day05--函数
一、函数定义 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。二、如何定义一个函数你可以定义一个由自己想要功能的函数,以下是简单的规则:函数代码块以 def 关键词开头,后接函数标识符名称和圆括号( )。任何传入参数...
2018-05-09 13:53:52 924
原创 Python_day04--集合set
一、集合的定义set集合,是一个无序且不重复的元素集合。集合对象是一组无序排列的可哈希的值,集合成员可以做字典中的键。集合支持用in和not in操作符检查成员,由len()内建函数得到集合的基数(大小), 用 for 循环迭代集合的成员。但是因为集合本身是无序的,不可以为集合创建索引或执行切片(slice)操作,也没有键(keys)可用来获取集合中元素的值。 1、集合元素是不可重复的;s = {...
2018-05-04 13:05:35 303
原创 Python_day04--元组tuple
一、元组tuple的基本概念---带了紧箍咒的列表 元组的值不能被做任何修改,它也没有append(),insert()这些方法,但是他获取元素和列表一样的方法一样,使用索引。在上一节我们说过列表,列表可以存放任何数据类型,也可以随时对元素做出修改,但是这样的话列表的“权利”过大,让我们的数据安全的得不到保证,但是元组(tuple)不同,他和列表一样,也可以存放任何数据类型的元素,也可以...
2018-05-04 11:54:52 197
原创 Python_day3--栈(Stack)、队列(Queue)
一、栈 的定义 栈(stack)又名堆栈,它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。(做一个形象的比喻:就好比我们用箱子整理课本,全部...
2018-05-04 10:40:32 276
原创 Python_day03---列表list
一、列表的定义 python内置了一种数据类型是列表:list 。list 是一种有序的集合,可以随时添加和删除其中的元素。有点类似于我们C语言中的数组,但是数组只可以存放同一类型的数据,尔列表list可以存放任意数据类型的元素,他是一种或多种的数据元素的集合。1. 列表的定义列表内可以添加同种类型元素;l1 = [1,2,3,4,5]print(l1,type(l1))也可以是...
2018-05-03 21:44:53 496
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人