一.编写可接受任意数量参数的函数:*.** >>> def test(x, *args, y, **kwargs): ... pass ... >>> test(1, 2, 3, 4 ,5 ,5, y=9, aa=99, bb=88,cc=900) >>> test(1, 2, 3, 4 ,5 ,5, 9, aa=99, bb=88,cc=900) Traceback (most recent call last): File "<st…
一.使用多个界定符分割字符串 字符串.split(',')形式只适用于单一分割符的情况:多分割符同时应用的时候,可使用re.split() >>> line = 'asdf fjdk; afed, fjek,asdf, foo' >>> import re >>> re.split(r'[;,\s]\s*', line) ['asdf', 'fjdk', 'afed', 'fjek', 'asdf', 'foo'] 或 >>> re.…
http://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000 a.编码 默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串,也可以为源码文件指定不同的编码:# -*- coding: cp-1252 -*- b.python保留字 保留字即关键字,我们不能把它们用作任何标识符名称.Python的标准库提供了一个keyword module,可以输…
一.构显国际橡棋8x8棋盘 #!/usr/bin/env python3 #-*- coding:utf-8 -*- color_0="\033[41m \033[00m" color_1="\033[46m \033[00m" def line(a, b): for i in range(0,48): if ((i // 8) % 2) == 0: print(a, end='') else: print(b, end='') for x in range(0,…
一.读写CSV数据: #!/usr/bin/env python3 #-*- coding=utf8 -*- import csv with open('kxtx.csv', 'rt') as f: f_csv = csv.DictReader(f) for x in f_csv: print(x) if x['货物名称'] == '电机': break f@z ~/py_script $ python3 csv_test.py {'开单网点组织编号': 'C050220002', '运单号':…
一.输出重定向到文件 >>> with open('/home/f/py_script/passwd', 'rt+') as f1: ... print('Hello Dog!', file=f1) ... 二.参数列表的分拆 当你要传递的参数已经是一个列表,但要调用的函数却接受分开一个个的参数值,这时候你要把已有的列表拆开来 >>> l ['cat', 1, 2, 3, 4] >>> print(*l, sep=',') #更优雅的实现 cat,1,…
一.对数值进行取整:round(value,ndigits) >>> round(15.5,-1) #可以取负数 20.0 >>> round(15.5,0) #当某个值恰好等于两个整数间的一半时,取整操作会取到离该值最近的那个偶数上 16.0 >>> round(16.5,0) #如上同例 16.0 #float提供17位的精度 二.对小数进行精确计算:decimal模块(规避float天生的精度误差,但效率低,常用于金融领域) >>&g…
一.从队列两端高效插入.删除元素,及保留固定数量的数据条目: collections.deque([iterable[,maxlen=N]]) a = collections.deque([1, 2],maxlen=3) a.appendleft(3) [3, 1, 2] a.appendleft(4) [4, 3, 1] a.popleft() [3, 1] 二.求队列中最大或最小的N个元素 思路1:heapq.nlargest(N, iterable, key=None).heapq.nsm…
一.反向迭代:reversed() >>> a [1, 2, 3, 4] >>> for x in reversed(a): ... print(x, end=' ') ... 4 3 2 1 #反向迭代只有在待处理的对象具有确定的大小或者对象实现了__reversed()__特殊方法时才能奏效,否则必须先将对象转化为列表(可能消耗大量内存) >>> with open('/etc/passwd', 'rt') as file: ... for x i…
本文地址:http://blog.csdn.net/sushengmiyan/article/details/11332589 作者:sushengmiyan 在python2中我们经常会使用cmp函数来比较一些东西,但是在python3中,你再来使用这个函数的时候,发现就报错了,提示找不到这个函数,这是为啥呢?嗯,新版的python已经舍弃之. 在python3中使用时报错信息如下: Syntax Error: if cmp(os.getcwd(), os.path.dirname(os.sy…