
?
绝对导入与相对导入
在程序中涉及到多个文件之间导入模块的情况 一律按照执行文件所在的路径为准。
绝对导入 ? ? ? ? 始终按照执行文件所在的sys.path查找模块
相对导入
? ? ? ?句点符(.) ? ? ? ? ? ? ? ?.表示当前文件路径 ? ? ? ? ? ? ? ?..表示上一层文件路径
? ? ? ?能够打破始终以执行文件为准的规则 只考虑两个文件之间的位置
? ? ? ?# 相对导入只能用在模块文件中 不能在执行文件中使用

?
软件开发目录规范
? ? ? ? ? ? ? ? 目录规范并无固定的要求 只要符合清晰可读即可
? ? ? ? ? ? ? ? bin文件夹 ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ?存放一系列启动文件(当启动文件很少或者只有一个的时候也可以直接写在外面) ? ? ?? ?start.py
? ? ? ? ? ? ? ??conf文件夹
? ? ? ? ? ? ? ? ? ? ? ?存放一系列配置文件 ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ??settings.py(一般情况下该文件内的变量名都是大写)
? ? ? ??lib文件夹
? ? ? ? ? ? ? ?存放公共的功能 ? ? ? ? ? ? ? ? ? ? ? common.py
? ? ? ??db文件夹
? ? ? ? ? ? ? ? ?存放数据相关文件
? ? ? ? ? ? ? ? ? ? ? ??userinfo.txt
? ? ? ??log文件夹
? ? ? ? ? ? ? ??存放日志记录文件
? ? ? ? ? ? ? ? ? ? ? ? log.txt
? ? ? ??core文件夹
? ? ? ? ? ? ? ?存放项目核心代码文件
? ? ? ? ? ? ? ? ? ? ? ?src.py
? ? ? ??readme文件
? ? ? ? ? ? ? ? 存放说明相关信息(类似于说明书 广告 章程)
? ? ? ??requirements.txt
? ? ? ? ? ? ? ??存放项目所需的第三方模块及版本号
? ? ? ? ? ? ?每个人必须熟练掌握!!!
正则表达式
正则表达式是一门独立的语言 跟其他编程语言都没有关系!!! 如果想在python代码中使用正则 需要借助于内置模块re
# 什么是正则表达式? ?? ?利用一些特殊符号的组合去字符串中筛选出符合条件的数据 ? ??
"""
1.必须是11位
2.必须是纯数字
3.必须符合手机号的排布 15 16 18 19
"""
# phone = input('请输入你的手机号>>>:').strip()
# if len(phone) == 11:
# if phone.isdigit():
# if phone.startswith('15') or phone.startswith('16') or phone.startswith('18') or phone.startswith('19'):
# print('手机号正确')
# else:
# print('格式不对')
# else:
# print('手机号必须是纯数字')
# else:
# print('必须是11位')
import re
phone_number = input('please input your phone number : ')
if re.match('^(13|14|15|18)[0-9]{9}$',phone_number):
print('是合法的手机号码')
else:
print('不是合法的手机号码')

?
字符组
# 特征是使用中括号括起来的 字符串默认只能单个单个字符匹配
[0123456789] # 匹配0到9之间任何一个数字
可以简写为
[0-9]
[a-z] # 匹配小写字母a到字母z其中任意一个字母
[A-Z] # 匹配大写字母A到字母Z其中任意一个字母
[a-zA-Z0-9] # 匹配所有的数字 小写 大写

?
特殊符号
# 特殊符号默认也只能单个单个字符匹配
. 匹配除换行符以外的任意字符
\d 匹配数字
^ 匹配字符串的开始
$ 匹配字符串的结尾
"""^与$组合使用可以精准限制要查找的数据"""
a|b 匹配字符a或字符b
() 匹配括号内的表达式也表示一个组(不会影响正则表达式的匹配单纯的分组而已)
[...] 匹配字符组中的字符
[^...] 匹配除了字符组中字符的所有字符

?
量词
1.表达式在没有量词修饰的情况下 都是单个单个匹配
2.量词必须结合(字符串、特殊符合等)一起使用 不能单独出现
3.量词只能影响前面的一个表达式(ab+ 只能影响b)
* 重复零次或更多次
+ 重复一次或更多次
? 重复零次或一次
{n} 重复n次
{n,} 重复n次或更多次
{n,m} 重复n到m次
"""
正则表达式中的量词默认都是'贪婪匹配'
"""

?
贪婪匹配与非贪婪匹配
# 带匹配的字符串
<script>123</script>
# 正则表达式
<.*> '''默认贪婪匹配 尽可能多的匹'''
# 将贪婪变为非贪婪 只需要在量词的后面加问号即可
<.*?> '''非贪婪匹配 尽可能少的匹 结束条件有左右两边决定'''
一些常见的正则可以到百度上搜索?
? ? ? ? ? 1.中文字符 [\u4e00-\u9fa5]
? ? ? ? ? 2.email地址 \w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}
? ? ? ? ? 3.手机号 0?(13|14|15|17|18|19)[0-9]{9}
? ? ? ? ? 4.身份证号 \d{17}[\d|x]|\d{15}

?
|