Python语言
文章平均质量分 51
wifeisboss
这个作者很懒,什么都没留下…
展开
-
python2/3差异之——字符串差异
Python2默认字符串类型str,使用ascii编码。>>> type('123')>>> '123'.decode('ascii')u'123'而对于包含中文的字符串,使用gb2312编码,不过仍然是str类型。>>> type('中文')>>> '中文'.decode('gb2312')u'\u4e2d\u6587'当然,如果是明确以u修饰的字符串,那就是unicod原创 2015-08-10 19:16:16 · 1412 阅读 · 0 评论 -
Python小技巧之——基类初始化
子类__init__初始化时,如果要对基类进行初始化,大家都知道可以用super:>>> class base(object): def __init__(self): print('base init') >>> class derived(base): def __init__(self): print('derived init') super(derived, se原创 2015-08-11 17:24:23 · 4359 阅读 · 0 评论 -
python小技巧之——in判断
in操作符测试原创 2015-08-05 10:56:54 · 2070 阅读 · 0 评论 -
Python小技巧之——巧用with语句实现异常处理
Python的异常处理语句try...except大家都很熟悉了,例如:try: 1/0except(Exception) as ex: print(ex) integer division or modulo by zero这种方式的好处是直观,对于逻辑简单的try...except语句比较有效。但是如果try逻辑比较复杂,或者有大段的except处理语句,这种方原创 2015-08-06 14:18:34 · 3966 阅读 · 0 评论 -
namedtuple使用
namedtuple顾名思义,就是可以通过名字访问成员的tuple。我们知道,要访问普通tuple类型的成员,只能通过索引,例如:>>> t = ('a', 'b', 'c')>>> print(t[0], t[1], t[2])a b c而namedtuple在此基础上还提供了通过名称访问的方式,其定义是:namedtuple(typename, field_names, v原创 2016-02-16 14:55:43 · 837 阅读 · 0 评论 -
python内置map和six.moves.map的区别
python内置map返回的是列表,而six.moves.map返回的是iter。>>> map(lambda a: a*2, [1, 2, 3])[2, 4, 6]>>> m = six.moves.map(lambda a: a*2, [1, 2, 3])>>> type(m)>>> next(m)2>>> next(m)4>>> m.next()6原创 2016-02-16 15:38:23 · 4648 阅读 · 0 评论 -
collections.defaultdict类的使用
defaultdict可以通过传入一个可执行对象,为不存在的key赋予默认值。举例:>>> def f(): yield 1 yield 2 yield 3 >>> it=f()>>> test=defaultdict(lambda:next(it))>>> testdefaultdict( at 0x02C195B0>, {})>>> test.items()[原创 2016-02-22 16:34:56 · 1266 阅读 · 0 评论 -
py3环境bytes转换unicode注意
在py3环境上,bytes字符串往unicode字符串转换不能像py2那样直接用unicode直接转换。例如:>>> str(b'abc')"b'abc'"可以看到,转换后的unicode字符串增加了一些字符(标红部分)。这并不是我们希望看到的。这里需要通过decode来转换。>>> b'abc'.decode()'abc'如上才是我们希望的结果。至于为什么原创 2016-09-13 16:53:48 · 2494 阅读 · 0 评论 -
使用getopt解析命令行参数
python中可以使用getopt来解析命令行参数,其定义如下:getopt(args, shortopts, longopts=[])其中,args是要解析的参数列表shortopts是短选项字符串(短选项,以-开头的选项,例如-a, -abc)longopts是长选项列表(长选项,以--开头的选项,例如--x, --xyz)getopt返回opts, args元原创 2016-10-12 15:17:16 · 873 阅读 · 0 评论