2015-07-13 Eric Wang
Version:Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:44:40) [MSC v.1600 64 bit (AMD64)] on win32 函数 可接受任意数量参数的函数 为了能让一个函数接受任意数量的位置参数,可以使用一个*参数 ```python def avg(first, *rest): return (first + sum(rest)) / (1 + len(rest)) Sample use avg(1, 2) # 1.5 avg(1, 2, 3, 4) # 2.5 `` 在这个例子中,rest`是由所有其他位置参数组成的元组。然后我们 继续阅读 »
2015-07-04 Eric Wang
Version:Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:44:40) [MSC v.1600 64 bit (AMD64)] on win32 数字日期和时间 数字的四舍五入 ```python !/usr/bin/python coding: UTF-8 """ Created on 2015/7/3 23:01 @author: 'WX' """ print(round(1.23, 1)) # Prints 1.2 print(round(1.27, 1)) # Prints 1.3 print(round(-1.27, 1)) # Prints 继续阅读 »
2015-07-06 Eric Wang
Version:Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:44:40) [MSC v.1600 64 bit (AMD64)] on win32 文件与I/O 读写文本数据 使用带有rt模式的open()函数读取文本文件 ```python with open('test.csv', mode='rt', encoding='utf-8') as f: data = f.read() print(data) with open('test.csv', mode='rt', encoding='utf-8') as f: for line in 继续阅读 »
2015-07-02 Eric Wang
Version:Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:44:40) [MSC v.1600 64 bit (AMD64)] on win32 There are two ways of constructing a software design: one way is to make it so simple that there are obviously no deficiences; the other is to make it so complicated that there are no obvious deficiences. ---- C.A.R. 继续阅读 »
2015-10-08 Eric Wang
开发环境:Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:44:40) [MSC v.1600 64 bit (AMD64)] on win32 自序 也许你会说,我为什么要学习使用CSV模块呢?没有CSV模块我一样可以解析操作CSV文件,比如下面这种代码: python with open('stocks.csv') as f: for line in f: row = line.split(',') # process row ... 使用这种方式的一个缺点就是你仍然需要去处理一些棘手的细节问题。比如,如果某些字段值被引号包围,你不得不去除这些引 继续阅读 »
2015-07-03 Eric Wang
定义 一个数列S,如果分别是两个或多个已知数列的子序列,且是所有符合此条件序列中最长的,则S称为已知序列的最长公共子序列。例如序列X=ABCBDAB,Y=BDCABA。序列BCA是X和Y的一个公共子序列,但是不是X和Y的最长公共子序列,子序列BCBA是X和Y的一个LCS。 复杂度 对于一般性的LCS问题(即任意数量的序列)是属于NP-hard。但当序列的数量确定时,问题可以使用动态规划(Dynamic Programming)在多项式时间解决。 解法 动态规划的一个计算最长公共子序列的方法如下,以两个序列$X=\langle x_1,x_2,...,x_m \rangle$、$Y=\langle y_1,y_2,...,y 继续阅读 »
2018-06-20 LEo
这是一个系列文章,主要分享python的使用建议和技巧,每次分享3点,希望你能有所收获。 1 python2代码转换成python3代码 python2代码: ```python !/usr/bin/env python -- coding: utf-8 -- 继续阅读 »
2016-07-28 Li Shuai
greenlet是Python众多协程实现技术中的一种,eventlet是基于greenlet实现的。而eventlet和libev又是gevent的核心。greenlet的上下文切换清晰易懂,可以结合IO事件循环构建出一些高效的事件处理逻辑。不同于yield类型的上下文切换,greenlet的上下文切换从表现形式上看更纯粹,可以直接switch到另一个greenlet,不用管目标greenlet是否已经在运行,不同greenlet之间处于完全对等的状态,可以相互switch。基于yield实现的协程往往只能切换回自己的直接或间接调用者,要想在嵌套的调用中切换出去是比较麻烦的。本质上是因为yield只能保留栈顶的帧,Python3对 继续阅读 »