博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
学习日志2018.10.11
阅读量:4948 次
发布时间:2019-06-11

本文共 2164 字,大约阅读时间需要 7 分钟。

模块和一些内置函数 
模块是什么:  *****
        模块 是一组功能的集合
        python中一个功能就是一个函数
        一个py文件就是一个模块
        例如 A.py   文件名A.py 模块名 A
 
模块的分类:
        1.自定义模块 *****
            (第三方模块也属于自定义 它是别的程序员写的 )
            关注如何自定义
        2.内置模块 ****
            是c语言写的 然后连接到python解释器中
            例如 time模块
            关注如何使用
 
        3.已经编译为DLL c或c++ ***
            不需要知道怎么来的 会用就行
        4.包  *****
           包实际上是包含一堆模块的文件夹
           之后详细将
        对于这四种模块 它们的使用方式 是一致的
 
如何定义模块:*****
    创建一个py文件  把你的功能写到文件中
 
如何使用模块:*****
    import 关键字 用于导入模块到当前文件中
    例如:import time
 
 
当执行import 做了什么? ****
    1.创建了一个命名空间
    2.执行被导入的py中的代码 将里面的名字和地址对应关系 存储到命名空间中
    3.在执行文件中 创建一个名字 该名字指向的地址就是 第一步创建的命名空间(模块的命名空间)
 
执行文件和被导入的模块的命名空间 是相互独立的 ****
    在被导入模块中 所有的名字使用的都是自己空间中的  和调用者无关
 
import 的其他写法 *****
    1.import xxx  as xxx
    给模块取别名 用于简化书写
    2.import xxx,xxxx
    一次导入多个模块
    3.from xxx import xxx
        从模块中导入某个名字到当前名称空间
        注意 要避免名称冲突
        如果冲突了 按照就近查找原则
    4.from xxx import xxx,xxx,xx
        从模块中导入多个名称
    5.from xxx import *
        从模块中导入所有名称
        __all__用于控制 使用者可以使用哪些名称
    6 from xxx import xx as xx
        取别名
    from 和 import 除了导入的名称 不同 其他特性一致
 
py文件的两种执行方式 *****
    1.作为执行文件  (右键run)
    2.作为模块被导入
 
    __name__ 这个名称 可以获取当前执行状态
    如果是__main__ 说明当前是执行文件
    否则 说明是作为模块
    于是乎有了以下代码
        if __name__ == "__main__":
            print("作为执行文件")
        else:
            print("作为模块导入了")
 
重复导入模块时  模块中的代码不会重复执行 仅在第一次导入时执行
 
 
模块的搜索顺序 *****
内存中已经加载的 - > 内置模块 - > sys.path
通常我们子啊编写项目时 会自己将模块的路径加入到sys.path中
print(abs(-100))
print(all([1,0])) # 全部为真结果为真
print(any([1,0])) # 有一个为真结果为真
print(type(ascii(1))) # 返回这个对象的字符串表示 如果有中文就变成了ascII编码 没意思
print(type(str("哈哈")))
print(bin(11)) # 二进制
print(oct(12)) # 八进制
print(hex(13)) # 十六进制
print(bool("")) # 转bool类型
print(callable(f)) # 是否可被调用
print(chr(97)) # 把整数转为unicode字符
print(chr(ord("哈"))) # 反过来
print(bytearray("abc哈哈",encoding="utf-8"))
print("哈哈".encode("utf-8"))
print(bytes("哈哈",encoding="utf-8"))
print(callable(f)) # 是否可被调用
eval# 执行一行python代码 并返回执行结果
exec执行一堆python代码 不返回任何结果
excuteable = compile("1+2*3","","eval") # 将一个表达式 或时 一堆代码 编译成一个可执行对象

转载于:https://www.cnblogs.com/jutao/p/9774065.html

你可能感兴趣的文章
win7任务栏还原为xp样式
查看>>
PYTHON_3和2
查看>>
json数组的取值方法
查看>>
2019-7-15 vue01day
查看>>
SELECT LOCK IN SHARE MODE and FOR UPDATE
查看>>
Perl/Nagios – Can’t locate utils.pm in @INC
查看>>
目录导航「深入浅出ASP.NET Core系列」
查看>>
Git常用命令拾遗
查看>>
Canvas的drawImage方法使用
查看>>
自定义适用于手机和平板电脑的 Dynamics 365(四):窗体脚本
查看>>
阴影效果参考网址
查看>>
华为交换机端口镜像
查看>>
简易爬虫(爬取本地数据)
查看>>
一位菜鸟的java 最基础笔记
查看>>
python 进程间通信
查看>>
字符串和编码
查看>>
servlet(一)
查看>>
异常实验
查看>>
python \r与\b的应用、光标的含义
查看>>
深拷贝 vs 浅拷贝 释放多次
查看>>