時光很短暫

导航

 

绝对导入和相对导入

绝对导入:
        默认都是以执行文件为准,从sys.path中查找
      eg:
            from aaa import m2
相对导入
        主要使用的是句点符   .
      '''
          .  代表的是当前目录
          .. 代表的是上一级目录
      '''
    eg:
          from . import m2
            from .bbb import m2
    # 在执行文件中,不能出现相对导入
  

软件目录开发规范

规范不一定非要遵守,可以按照自己的想法创建,但是,还是推荐按照规范来

bin
        # 一般情况里面写启动文件,当你的执行文件只有一个的时候,或者比较少的时候,可以放在项目的根目录中
   start.py
   run.py
core
        # 主要写业务逻辑的
    src.py
api/interface
        接口
db:database
        # 存放数据的
      db_handler
lib: library
      库文件
    # 一般写公共的文件
    common.py
conf: config
    配置文件 # 一般在配置文件中全大写
log
        日志文件:方便排查错误
    
requestment.txt 保存第三方模块的模块名
readme  # 对项目的解释,类似于说明书

'''
    在Mac系统和Linux系统中使用
        ls: 查看当前文件夹下的所有的文件夹和文件
    
    在Windows系统中
        dir:查看当前文件夹下的所有的文件夹和文件
'''

正则表达式

# 正则表达式根语言没有关系,它是一门独立的语言
''' 作为后端程序员,凡事牵涉到用户输入数据的地方,都要做参数校验 '''
eg:
      手机号的特征:
        1. 必须是数字
      2. 手机号是11位
      3. 满足常见的手机号:13,15,18,19
      
正则表达式的样子:^(13|14|15|18)[0-9]{9}$

'''在Python中使用正则表达式,需要借助于re模块'''

字符组

# 语法格式:[字符组]

[0123456789]: 匹配0-9之间的任意一个数字
[0-9]:根上面的一模一样
[a-z]: 匹配a-z的26个小写英文字母
[A-Z]: 匹配A-Z的26个大写英文字母
[0-9a-zA-Z]:匹配大写字母和小写字母以及数字

字符

.     匹配除换行符以外的任意字符 ***
\w    匹配字母或数字或下划线 **
\d    匹配数字      ****
\n    匹配一个换行符 **
^    匹配字符串的开始  ****
$    匹配字符串的结尾  ****
a|b    匹配字符a或字符b
()    匹配括号内的表达式,也表示一个组
[^...]    匹配除了字符组中字符的所有字符

量词

*    重复零次或更多次
+    重复一次或更多次
?    重复零次或一次
{n}    重复n次
{n,}    重复n次或更多次
{n,m}    重复n到m次

贪婪匹配和非贪婪匹配

正则表达式默认是贪婪匹配

李[杰莲英二棍子]*

李杰和李莲英和李二棍子

 

posted on 2022-01-18 19:36  時光很短暫  阅读(29)  评论(0)    收藏  举报