使用模块
编写一个hello的模块
别名
import cStringIO as StringIOexcept ImportError: # 导入失败会捕获到ImportError import StringIO
在一个模块中,我们可能会定义很多函数和变量,但有的函数和变量我们希望给别人使用,有的函数和变量我们希望仅仅在模块内部使用。
def_private_1(name): return'Hello, %s' % name def_private_2(name): return'Hi, %s' % name defgreeting(name): if len(name) > 3: return _private_1(name) else: return _private_2(name)
在Python中,安装第三方模块,是通过setuptools这个工具完成的。其他常用的第三方库还有MySQL的驱动:MySQL-python,用于科学计算的NumPy库:numpy,用于生成文本的模板工具Jinja2
>>> import mymoduleTraceback (most recent calllast): File "<stdin>", line 1, in <module>ImportError: Nomodule named mymodule
# still running on Python 2.7from __future__ import unicode_literalsprint'\'xxx\' is unicode?', isinstance('xxx', unicode)print'u\'xxx\' is unicode?', isinstance(u'xxx', unicode)print'\'xxx\' is str?', isinstance('xxx', str)print'b\'xxx\' is str?', isinstance(b'xxx', str)