首页 > 后端开发 > Python教程 > python tips

python tips

巴扎黑
发布: 2016-12-09 13:27:14
原创
2530 人浏览过

1、enum 

Python代码  

#!/usr/bin/env python  
# -*- coding:utf-8 -*-  
  
def enum(**enums):  
    return type('Enum', (), enums)  
Gender = enum(MALE=0,FEMALE=1)  
print Gender.MALE  
print Gender.FEMALE
登录后复制



2、检查字符串是否是number

Python代码

s='123456789'  
s.isdigit()#return True
登录后复制


3、list取交集

Python代码

s=[1,2,3]  
w=[2,3,4]  
list(set(s).intersection(w))
登录后复制


4、两个list转成一个dict

Python代码

dict(zip(a,b))
登录后复制



5、singleton

Python代码

def singleton(cls):  
    instances = {}  
    def get_instance():  
        if cls not in instances:  
            instances[cls] = cls()  
        return instances[cls]  
    return get_instance
登录后复制


第二种tornado IOLoop中使用的单例模式:

Python代码

@staticmethod  
def instance():  
    """Returns a global IOLoop instance. 
 
    Most single-threaded applications have a single, global IOLoop. 
    Use this method instead of passing around IOLoop instances 
    throughout your code. 
 
    A common pattern for classes that depend on IOLoops is to use 
    a default argument to enable programs with multiple IOLoops 
    but not require the argument for simpler applications:: 
 
        class MyClass(object): 
            def __init__(self, io_loop=None): 
                self.io_loop = io_loop or IOLoop.instance() 
    """  
    if not hasattr(IOLoop, "_instance"):  
        with IOLoop._instance_lock:  
            if not hasattr(IOLoop, "_instance"):  
                # New instance after double check  
                IOLoop._instance = IOLoop()  
    return IOLoop._instance
登录后复制


6、list排重

Python代码

{}.fromkeys(list).keys()
登录后复制


相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板