百无一用生

一个老头学编程

我的第一个玩具程序,留个记号。

我的第一个玩具程序,留做记号,代表了从学习 Python 到现在的高度,希望有一天能自己回过头来嘲讽现在的自己。 # coding: utf-8 __author__ = "Deng" import random, time, threading, os c...

2018-12-07 21:58:13

阅读数 89

评论数 0

第一篇置顶

哥们不是程序猿 学习编程,只是兴趣,也不是唯一兴趣。算是新兴的兴趣吧。作为一个七零后,已过不惑之年,能有这个兴趣,我自己也觉得我是个奇葩。 学习笔记纯自己手打,但是基本上是书上代码自己照着再撸一遍,算是做个记号。 既然是学习笔记,为了尊重原作者的劳动,每篇笔记都发表为转载。 ...

2018-11-24 00:16:15

阅读数 12

评论数 0

python cookbook 学习笔记 第七章 函数(5) 定义有默认参数的函数

定义有默认参数的函数 问题: 想定义一个函数或者方法,他的参数是一个或多个可选的并且有一个默认值。 解决方案: 定义一个有可选参数的函数非常简单,直接在函数定义中给参数指定一个默然值,并放到参数列表最后就可以了。比如: #def spam(a, b= 42): # print(a, b)...

2018-12-27 18:55:33

阅读数 19

评论数 0

python cookbook 学习笔记 第七章 函数(4) 返回多个值的函数

返回多个值的函数 问题: 构造一个返回多个值的函数 解决方案: 为了能够返回多个值,函数直接 return 一个元组就行了。比如: def myfun(): return 1, 2, 3 a, b, c, = myfun() print(a) # 1 print(b)...

2018-12-27 18:51:01

阅读数 37

评论数 0

python cookbook 学习笔记 第七章 函数(3) 给函数参数增加元信息

给函数参数增加元信息 问题: 写好一个函数,想为这个函数的参数增加一些额外的信息,其他使用者可以更清楚的知道这个函数如 何使用。 解决方案: 使用函数参数注解是一个很好的办法,它能提示应该怎样正确使用这个函数。比如: def add(x:int, y:int) -&...

2018-12-27 18:48:24

阅读数 25

评论数 0

python cookbook 学习笔记 第七章 函数(2) 只接受关键字参数的函数

只接受关键字参数的函数 问题: 希望函数的某些参数强制使用关键字参数传递 解决方案: 将强制关键字参数放到某个*参数或者某个 * 后面就能达到这种效果。比如: def recv(maxsize, *, block): pass 利用这种技术,我们还能再接受任意多个位置参...

2018-12-27 18:45:21

阅读数 39

评论数 1

python cookbook 学习笔记 第七章 函数(1)可接受任意数量参数的函数

可接受任意数量参数的函数 问题: 想构建一个可以接受任意数量参数的函数 解决方案: 为了能让一个函数接受任意数量的位置参数,可以使用一个*参数。比如: def avg(first, *args): return(first + sum(args))/(1 + len(arg...

2018-12-27 18:41:04

阅读数 18

评论数 0

使用循环语句+remove()方法删除列表元素的小坑

alist = [{"ID": "001", "name": "111"}, ...

2018-12-18 02:03:45

阅读数 82

评论数 0

可调用对象的魔术方法,__call__()方法。

__call__()魔术方法: 原理很简单,应用很广泛,直接上代码 class Coordiate(object): def __init__(self, x= 0, y= 0): self.x = x self.y = y def __cal...

2018-12-17 23:57:05

阅读数 28

评论数 0

创建自己的序列,让其支持容器类型的操作。

创建属于自己的序列 如果想要像操作序列那样,操作某些类型相同的对象,但是原生的对象不支持容器类型的操作。这个时候就需创建自己的序列。 class User(object): def __init__(self, id_list= None): self.id_list ...

2018-12-17 23:26:26

阅读数 7

评论数 0

Python 3.6以后版本的格式化输出

Python 3.6版本以后允许在字符串前置f的形式代替 .format语句 class Person(object): def __init__(self,name,age): self.name = name self.age = age ...

2018-12-17 09:39:51

阅读数 96

评论数 0

控制属性访问的魔术方法

__ getattr__(self, item)的使用场景 访问一个对象属性的时候,如果属性不存在,就会去执行__getattr__()方法,如果属性存在,就不会调用__getattr__()方法 import logging class Person(object): def __...

2018-12-16 20:23:20

阅读数 34

评论数 1

增量赋值运算的魔术方法

增量赋值的运算魔术方法 __iadd__(self,other)魔术方法:在给对象做+=运算的时候会执行的方法。 __isub__(self,other)魔术方法:在给对象做-=运算的时候会执行的方法。 __imul__(self,other)魔术方法:在给对象做*=运算的时候会执行的方法。...

2018-12-16 17:38:00

阅读数 25

评论数 0

二元运算符的魔术方法

二元运算符的魔术方法 class Coordinate(object): def __init__(self, x, y): self.x = x self.y = y def __add__(self, other): # 加法操作 ...

2018-12-16 17:08:40

阅读数 42

评论数 0

Python中一元运算符的魔术方法

一元运算符的魔术方法 class Coordinate(object): def __init__(self, x, y): self.x = x self.y = y def __pos__(self): # 在对象前加“+”的操作 ...

2018-12-16 16:29:28

阅读数 160

评论数 0

Python3中用于比较的魔术方法

Python3中用于比较的魔术方法 class Person(object): def __init__(self, name, gender, age, weight): self.name = name self.gender = gender ...

2018-12-16 15:32:50

阅读数 70

评论数 0

Python 异常处理

Python- 异常处理: 异常处理的语法: try: ... # 可能会出现的异常 except: ... # 如果出现异常时执行的代码 else: ... # 没有异常时执行的代码 finally: ... # 如论是否抛出异常都会执行的代码 无...

2018-12-14 23:21:32

阅读数 10

评论数 0

Python- 文件指针定位之 seek() 方法

文件指针定位之 seek 方法 seek(offset, from) offset :文件指针偏移量(很多博客在这里将offset定义为指针偏移量,但是目前我的看法是这里定义为指针的相对位置) from : 0-文件开头 1-当前位置 2-文件末尾(这里的0,1,2只是代表了文件位置,而不是说...

2018-12-09 01:22:47

阅读数 316

评论数 0

filter()、map()、reduce()函数的使用

filter()、map()、reduce()三个函数都可以传入 函数、列表等可迭代类型 的两个实参。 语法格式: filter(函数,列表) map(函数,列表) reduce(函数,列表) 用法举例: x = [1, 2, 3, 4, 5] y = filter(lambda ...

2018-12-08 18:26:01

阅读数 98

评论数 0

python cookbook 学习笔记 第五章 文件与IO (10) 内存映射的二进制文件

内存映射的二进制文件 问题: 想内存映射一个二进制文件到一个可变字节数组中,目的可能是为了随机访问它的内容或原地做些修改。 解决方案: 使用 mmap 模块来内存映射文件。下面是一个工具函数,演示了如何打开一个文件并以一种便捷方式内存映射这个文件。 import os import...

2018-12-08 00:39:43

阅读数 69

评论数 0

提示
确定要删除当前文章?
取消 删除