前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python学习笔记5—Python模块

Python学习笔记5—Python模块

作者头像
py3study
发布2020-01-10 12:23:14
3170
发布2020-01-10 12:23:14
举报
文章被收录于专栏:python3python3python3

    python模块分为系统内置的模块、第三方的模块和用户编写的模块

    默认情况下,python第三方的模块安装在python 的安装目录下site-packages下,以文件或者目录的形式存放

    用户模块,程序模块化对区分功能和结构,代码清晰度有很好的帮助

    默认情况下,在python运行时只是加载了少数的系统内置的模块,可以使用vars()查看

>>> print vars()
{'__builtins__': <module '__builtin__' (built-in)>, '__package__': None, '__name__': '__main__', '__doc__': None}
>>> vars()
{'__builtins__': <module '__builtin__' (built-in)>, '__package__': None, '__name__': '__main__', '__doc__': None}
>>> import time
>>> print vars()
{'__builtins__': <module '__builtin__' (built-in)>, '__package__': None, 'time': <module 'time' (built-in)>, '__name__': '__main__', '__doc__': None}

    python程序可以作为模块运行,也可以作为模块被倒入使用

    如果调用 main 就时代表直接运行程序当前本身

    被倒入文件命名要以.py结尾,并且需要在python python环境变量可以搜索到的位置

    PYTHONPATH环境变量设定python导入模块的路径

    在交互式的DILE或者命令行运行时,用户的cwd默认加入pythonpath变量中

    零时性的修改可以修改sys.path

>>> import sys
>>> sys.path
['E:\\Note\\Python', 'D:\\Python27\\Lib\\idlelib', 'C:\\Windows\\system32\\python27.zip', 'D:\\Python27\\DLLs', 'D:\\Python27\\lib', 'D:\\Python27\\lib\\plat-win', 'D:\\Python27\\lib\\lib-tk', 'D:\\Python27', 'D:\\Python27\\lib\\site-packages']
>>> sys.path.append('/tmp')
>>> sys.path
['E:\\Note\\Python', 'D:\\Python27\\Lib\\idlelib', 'C:\\Windows\\system32\\python27.zip', 'D:\\Python27\\DLLs', 'D:\\Python27\\lib', 'D:\\Python27\\lib\\plat-win', 'D:\\Python27\\lib\\lib-tk', 'D:\\Python27', 'D:\\Python27\\lib\\site-packages', '/tmp']

    赋值语句,variables name=variables values

        在定义变量名是不得使用系统关键字和特殊符号,变量值可以是任意的数据对象

        变量名是未知的类型,变量名的类型取决于被赋予值的类型

    链式赋值

        a=b=c=100

        将数字100分别的赋予给a,b,c

    序列解包赋值

        name,age,address=('keyman',27,'BeiJing')

        序列解包赋值变量名和变量值必须相等

    import语句是也是一个赋值语句

        improt socket    将socket模块倒入之后,赋值给scoekt

    import语句是将python模块导入,模块应该放置在pythonpath目录下

    import module name 或者 import module name as alias name

    from module name import method 或者 from module name import method as alias name

import time    #导入time模块
import time as t    #导入time模块,并取别名t,以后使用time模块的方法时,将以t代替time,比如t.time()
from math import sqrt    #将math模块中的sqrt方法导入
from math import sqrt as q    #将math模块中的sqrt方法导入,并取别名q

    python预留的关键字可以使用keyword模块检查

    keyword模块下的kwlist方法可以打印系统中所有的被预留的关键字

    keyword模块下的iskeyword可判断对象是否是关键字

>>> import keyword
>>> print keyword.kwlist
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
>>> print keyword.iskeyword('for')
True
>>> print keyword.iskeyword('list')
False

    在python2.6、2.7中print是一个语句,在python3.0中python,print是一个函数

    print 连续打印多个对象,可以用','隔开

    如果要使用多个print语句,但结果需要显示在一行,需要在print语句之后加上','

print 'a'
print 'b',
print 'c'
print 'd','e'
print('a')

    执行结果为

a
b c
d e
a

    exec语句

        exec 主要用于执行字符串内包含有python的代码

        exec("print 'hello world'")

    eval语句

        eval 主要用于执行字符串内包含有python的算术表达式

        exec("print (1+100-20)/2")

exec('print "hello world"')
print eval('5+4*3')

    执行结果为

hello world
17
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-08-19 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档