python第五天

1.什么是模块
模块导入的几种方式
2.什么是包,然后包和文件夹的区别
如何指定 from package import * 导入的模块
3.四种格式化输出方法:
姓名 年龄 家庭住址
四行记录,每行记录使用一种格式化方式(当前这种格式化方法中涉及的都展示出来
除了%,其他的都需要有:宽度,对齐方式,填充)
4.选做:软考的移到题,填空1, 2, 3
s = input("请输入一个由1和0组成二进制字符串: “)
d = 1
while s:
d = 2
s = s[1:]
print(f"转换成十进制的数为: {3}”)
1、什么是模块:

Python 模块是一个以 .py 结尾的 Python 文件,包含了 Python 对象定义和Python语句。每一个模块在python里都被看做是一个独立的文件。模块可以被别的程序引入,以使用该模块中的函数等功能,这也是使用 python 标准库的方法。

模块导入
模块可以导入其它模块,习惯上把所有 import语句放在模块的开头。模块导入的方式有几种:

**方式一:**使用 import 语句来引入模块
import module1[, module2[,… moduleN]]

直接使用关键词import,后面跟具体的模块名称,就可以导入某一个模块。同一个模块不管执行了多少次import,都只会被导入一次,以防止模块被一遍又一遍的执行。
**方式二:**使用from…import 语句来引入模块
from modname import name1[, name2[, … nameN]]

在使用import语句导入模块时会将整个模块引入进来,而使用from…import 语句则是从模块中导入一个指定的部分到当前命名空间中。

**方式三:*使用from…import 语句来引入模块
from…import*语句表示把一个模块的所有内容全都导入到当前的命名空间。
from modname import *
在多数情况下,都不会使用这个功能,因为它在解释器中引入了一组未知的名称,而它们很可能会覆盖一些你已经定义过的东西。
注意通常情况下从一个模块或者包内调入 * 的做法是不太被接受的, 因为这通常会导致代码的可读性很差。不过,在交互式编译器中为了节省打字可以这么用。

模块的好处
大大提高了代码的可维护性;
代码不必从零开始,一个模块编写完毕之后,其他模块可以直接调用,节约了工作时间;
避免函数名称和变量名称重复,在不同的模块中可以存在相同名字的函数名和变量名,但是尽量不要和系统内置的模块名称重复;

2、什么是包:
包是一个有层次的文件目录结构,它定义了由n个模块或n个子包组成的python应用程序执行环境。通俗一点:包是一个包含__init__.py 文件的目录,该目录下一定得有这个__init__.py文件和其它模块或子包。
而目录跟包唯一不同的就是没有__init__.py 文件,一个包是一个带有特殊文件__init__.py 的目录,而__init__.py 文件定义了包的属性和方法。其实它可以什么也不定义;可以只是一个空文件,但是必须存在。如果__init__.py 不存在,这个目录就仅仅是一个目录,而不是一个包,它就不能被导入或者包含其它的模块和嵌套包
from test_package.package_module1 import data# from test_package import package_module1import test_package.package_module1print(test_package.package_module1.data)
3.四种格式化输出方法:
str_format = “{0:8}{1:8}{2:^50}”
print(str_format.format(“姓名”, “年龄”, “家庭住址”))
str_format = “{0:<8}{1:<8}{2:<50}”
print(str_format.format(“张三”, “18”, “陕西省西安市雁塔区xxx号”))
str_format = “{0:8}{1:8}{2:^50}”
print(str_format.format(“王麻子”, “20”, “内蒙古自治区xxx旗xxx村xxx”))
str_format = “{0:>8}{1:>8}{2:>50}”
print(str_format.format(“李四”, “19”, “西安”))
4
s = input(“请输入一个由1和0组成的字符串:”)
d = 0
while s:
d = d + int(s[0])2*(len(s)-1)
s = s[1:]
print(f"转化为十进制的数为:{d}")
运行结果:
姓名 年龄 家庭住址
张三 18 陕西省西安市雁塔区xxx号
王麻子 20 内蒙古自治区xxx旗xxx村xxx
李四 19 西安

Process finished with exit code 0
请输入一个由1和0组成的字符串:10111010
转化为十进制的数为:186
Process finished with exit code 0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值