Python——20days

发布时间 2023-09-16 15:18:19作者: 拆尼斯、帕丁顿

名字的查找顺序

绝对导入和相对导入

包的使用

正则表示式(独立的语言)

字符组

字符

等…………………………

————————————————————————

名字的查找顺序:

1. 先从内存中查找
2. 再从内置模块中查找
3. 最后去环境变量sys.path中查找

如果以上都找不到,直接报错!
给文件名或者叫模块名起名字的时候一定不能跟内置模块名冲突

 

——————————————————————————相对导入 和绝对导入

在导入模块的时候,模块的查找始终以执行文件所在的路径为准"""

绝对导入:
它始终是以执行文件所在的sys.path路径为基准查找

相对导入:
(句点符)
 代表的是当前路径
 代表的是上一级路径

 相对导入可以打破始终以执行文件及准的查找顺序
from .ccc import m2
from .ccc.ddd import m2

只要py文件中出现了相对导入语句(.开头的语句),那么,这个文件就不能当成执行文件了,只能被导入、

——————————————————————————包的使用

 

什么是包?
就是文件夹,其实就是文件夹中包含了一些列的py文件(模块)
—— ————   包就是一些列模块的组合
包和模块有什么区别呢?
包中有一个特殊文件:__init__.py文件


导包其实就是在导包下的__init__.py文件的

myproject
├─ __init__.py
├─ mypack01
    ├─ __init__.py
├─ mydir
├─ ab.py
└─ bc.py



————————————————————————————软件开发目录规范

软件开发目录规范就是跟项目中得文件夹起合适的名字的!

 

项目名:
bin
# 放启动文件的 run.py start.py manage.py...
如果你的启动文件只有一个,也可以不要bin文件夹,可以把启动文件写在项目的跟下

conf (config:配置)
# 放项目的配置文件
settings.py
'''就是一些初始化的数据'''
core # 核心的
# 写一些项目的核心逻辑
src.py
def login():
pass
def register():
pass
lib # library 库
# 这个里面一般写项目使用的公共代码
common.py
def outer():
pass

log
# 日志:就是记录一些在代码运行过程中发生的一些事情,可以是正确的,可以是异常的
log.log

db
# database
跟项目相关的数据存储都存在db、data

api/
# 接口层
# 当你自定义文件夹名字的时候,一定要是见名知意, 一定不能出现中文的
setup.py # 安装模块使用的 python setup.py ...
|-- requirements.txt # 目前用不到--->

 

taobao
time
os
requests
xml
...
# 命令:
reqeusts == 1.11.1
xml = 1.1.1
# 命令:
|-- README
# 就是项目的说明书

 

下周要讲的ATM项目用的就是这个

———————————————————————————————正则表达式

 

正则表达式:
利用一些特殊的符号匹配出我们想要的数据

正则表达式它是一门独立的语言,跟Python、Java等语言没有关系的
所以,如果想在Python中使用正则表达式,需要借助于re模块,内置的
import re

———————————————————————————————字符组

[0123456789] # 0-9之间的数字
[0-9] # # 0-9之间的数字
[A-Z] # # A-Z之间的字母
[a-z] # # a-z之间的字母