python脱产4期内容整理NO.18

今天主要讲的内容有:

一、包的详解
二、相对导入和绝对导入
三、内置模块补充

一、包的详解

  1、包是什么

    包其实也是一个模块,只不过是一个大的模块下包含一堆模块的载体
    本质上也是一个文件夹,与普通文件的区别在于其中包含一个init的文件

  2、包的作用

    包的作用就是提高代码的可读性和扩展性

  3、怎么使用包

    创建一个package文件夹,在该文件下创建多个文件
    使用包和调用模块一样,import 包名

  4、init文件的作用

    模块调用会发生一下三种情况:
      1.会创建一个名称空间
      2.会执行模块中的代码
      3.在执行文件中产生的名称指向模块名称的空间

    但包是一个文件夹是包不是文件,所以init在导入包时,就执行了包上模块功能

    好处:可以在init文件下调用多个模块中的功能,就无需在挨个查找

    总结:init其实是讲所有模块名导入到该文件下,继而将所有模块名称下的功能导入其中

    注意:由于init文件作为模块导入,所以sys.path中不包含该目录,所以导入时要制定该名

  5、包的嵌套

    定义:包的嵌套的就是包中有包的意思,包中的包被称为子包
    要是用子包中的内容和模块方法一样,在子包中的init中导入需要的内容,但要注意不管                  是子包都是做为模块导入的

    调用sys.path中肯定不包含子包路径,导入时需要从文件目录往下找

  6、导入需要注意的事项

    1.使用import导入模块时可以加点来访问下层
    2.注意点的左边必须是包名
    3.在import后面不可以有点,必须有一个明确的名字

    

二、相对导入和绝对导入

  1、相对导入的定义

    从sys.pash开始的完整路径开始导入

  2、绝对导入的定义

    相对于被导入模块的路径
    语法为 "."表示当前路径,”.."表示上一层路径,“..."上上层的路径 以此类推

  3、注意事项:
    1.建议不超过三层
    2.相对导入只能用于包的内部模块之间的调用

  4、常见的错误演示

    绝对导入时没有从当前文件开始
    执行文件中用了绝对导入
    跳出了顶层包的范围

三、内置模块的补充

  

print(complex(1))
#complex 转换为复数形式

print(dir())
#查看内置属性和方法,不传参数就是当前对象

print(divmod(10,3))
#执行除法运算,返回商和余数

print(enumerate(["a",2,3,4]))
#将值和索引组成元组

print(globals())
#查看全局空间中有哪些名称

def func():
    x=100
    print(locals)
func()
#locals 查看局部空间有哪些名称

print(hash([1,2,3]))
#不可变类型可hash 可变类型不可hash

print(help())
#查看帮助信息

li=[1,2,3,4]
res=li.__iter__()
res.__nest__()
iter(li)
next(res)
#可迭代对象和可迭代器对象

print(len(li))
#代表长度

print(id(100))
print(memoryview("100".encode("utf-8")))
#id和memoryview 找内存地址

print(pow(2,3,3))#2**3%3
#2的三次方除3

print(type(str([1,2,3])))
#返回对象字符串的表示

print(list(reversed([1,2,3])))
#reversed反转顺序

print(round(1.2))
#四舍五入

res=slice(1,3)
li=[1,2,3,4,5,6,7,8,9]
print(li[1:3])
print(res)
#slice切分的意思

print(list(zip([1,2,3],[3,2,1])))
#zip拉链函数将多个可迭代对象中的数据一一对应

print(vars())
#不传参数和locals一样,如果传参那就调用这个对象的__dict__

    

原文地址:https://www.cnblogs.com/wuzhengzheng/p/9778227.html

时间: 2024-11-02 14:46:42

python脱产4期内容整理NO.18的相关文章

python脱产4期内容整理NO.11

今天的内容整理共有5部分 一.命名关键字参数 二.函数对象 三.函数的嵌套 四.名称空间与作用域 五.闭包函数 一.命名关键字参数 命名关键字参数:在定义函数是,*与**之间的参数称为命名关键字参数           特点:在调用函数时,命名关键字参数必须按照key=value的形式传值           正常的函数形参排列(位置,关键字,*args,命名关键字,**kwargs) 二.函数对象 函数是第一类对象:指的是函数内存地址可以像一个变量值一样去使用 1.变量值可以被引用 2.变量值

python脱产4期内容整理NO.8

一,文件处理的模式基本概念 打开文件的模式有三种:r(默认),w ,a 控制操作文件内容格式的两种模式:t(默认),b 操作文件内容格式不能单独使用,必须与纯净模式结合 二,打开文件模式 详解 1.r是只读模式:文件不存在时会报错,文件存在时文件指针位于文件开头部分 with open('a.txt',mode='rt',encoding='utf-8')as f: print(f.readlines()) 2.w是只写模式:在文件不存在时,会建立新文件,文件存在时内容会删除旧文件, 文件指针在

Google C++ 风格指南内容整理

之前一直没有全面的看过Google C++风格指南,现在很多公司进行C++开发都要求按照Google C++风格.在这个网站 http://zh-google-styleguide.readthedocs.org/en/latest/contents/  有人已经把其翻译成中文.为了便于以后查看,下面的内容完全是来自于这个网站,只是把多个网页的内容整理放在了一起. 1.      头文件: 通常每一个.cc文件都有一个对应的.h文件.也有一些常见例外,如单元测试代码和只包含main()函数的.c

老男孩python第六期

01 python s6 day7 上节回顾02 python s6 day7 SNMP使用03 python s6 day7 大型监控架构讲解04 python s6 day7 Redis使用05 python s6 day7 定义监控文档结构06 python s6 day7 监控架构讲解07 python s6 day7 定义监控模板08 python s6 day7 自定义监控项09 python s6 day7 通过深copy实现各主机服务的自定义配置10 python s6 day7

2018年老男孩最新全栈python第8期全套视频教程(6个月)陆续更新完!

2018年老男孩最新全栈python第8期视频教程(6个月)陆续更新完! 1.png (78.13 KB, 下载次数: 0) 下载附件 半小时前 上传 视频日期:   老男孩教育Python高级全栈开发工程师 课程内容: 第一阶段: linux基础以及常用服务学习(2周) 计算机组成原理 linux前世今生 linux介绍以及特点 Unix的历史介绍 自由软件以及基金会 GUN.GPL核心 linux的三大企业应用领域介绍 linux的各种开发性版本以及区别 linux的环境搭建 CentOs安

Python Selenium入门学习材料整理

Python Selenium入门学习材料整理一.简介及环境搭建1.selenium 介绍:selenium 是一个 web 的自动化测试工具,可以自动打开浏览器执行页面打开.页面内容抓取.页面元素搜索,是相对好上手的网页爬取工具.2.安装selenium:pip install selenium3.安装webdriver:selenium打开网页需要有webdriver来调用浏览器.Firefox:https://github.com/mozilla/geckodriver/releases/

Python中set集合的整理

set集合函数主要用来去除重复: 比如一个列表有多个重复值,可以用set搞掉 >>> l = [1,2,3,4,5,4,3,21] >>> >>> l [1, 2, 3, 4, 5, 4, 3, 21] >>> >>> >>> set(l) set([1, 2, 3, 4, 5, 21]) >>> set  可以做交集,并集,差集 set的增删改 增:>>> a

要继续看Python写算法的内容请到那里去

因为在这里发文章的时候,莫名其妙的出现发布出去的问题,客服告知是因为链接或者敏感词. 能不能告诉我哪里出了问题?我可以修改,以便再发. 但是,没有人告诉我,只是告诉我不能发. 另外,能不能公布一下敏感词?以后我在遣词造句的时候,才可以避免. 但是,没有看到敏感词列表. 以后我的文章将发布在https://www.github.com/qiwsir/algorithm里面,有兴趣的可以到那里阅读. 要继续看Python写算法的内容请到那里去,布布扣,bubuko.com

Python逐行读取文件内容

Python逐行读取文件内容thefile= open("foo.txt") line = thefile.readline() while line: print line, line = thefile.readline() thefile.close() Windows下文件路径的写法:E:/codes/tions.txt 写文件:thefile= open("foo.txt", "rw+")for item in thelist: the