Python --正则表达式、版本控制

正则表达式的使用

例一、
def is_valid_username(username):
    """
    判断用户名是否有效(用户名由字母、数字、下划线构成且长度为6-20个字符)
    :param username: 用户名
    :return: 有效返回True否则返回False
    """
    if 6 <= len(username) <= 20:
        for i in username:
            if  not ('0' <= i <= '9' or 'A' <= i <= 'Z'
                     or 'a' <= i <= 'z' or i == '_'):
                return False
        return True
    return False


def main():
    username = input('请输入:')
    print(is_valid_username(username))


if __name__ == '__main__':
    main()
小结:以上复杂的判断,其实可以用 r’^[0-9a-zA-z_]{6,20}’ 来判断。这就是正则表达式的应用之一~,方便了许多~
正则表达式 - 工具 - 定义字符串的匹配模式
re - regular expression
例二、判断输入的QQ号及用户名是否正确~
import re


def main():
    username = input('请输入用户名:')
    qq = input('请输入QQ号:')
    # 多次用到正则表达式,就用这种写法
    # pattern1 = re.compile(r'^[0-9a-zA-z_]{6,20}')
    # m = pattern1.match(username)
    m = re.match(r'^[0-9a-zA-Z_]{6,20}$', username)
    q = re.match(r'^[0-9]\d{4,11}$', qq)
    if not m:
        print('请输入有效用户名!')
    if not q:
        print('请输入有效的QQ号!')
    if m and q:
        print('输入有效!')


if __name__ == '__main__':
    main()
小结:这里用到了 ^和 $
代表了字符串的开始与结束;[a_z] 代表从字母 a 到字母 z ,\d代表数字
例三、查询输入的手机号码是哪家供应商的?(移动、联通或者电信)
def main():
    num = input('请输入电话号码:')
    if re.match(r'^13[4-9]\d{8}|^15[0-27-9]\d{8}|^18[2-47-8]\d{8}|^147\d{8}|^178\d{8}|$',num):
        print('移动号码!')
    elif re.match(r'^13[0-2]\d{8}|^15[5-6]\d{8}|^18[5-6]\d{8}|^145\d{8}|^176\d{8}|$',num):
        print('联通号码!')
    elif re.match(r'^133\d{8}|^153\d{8}|^18[0-19]\d{8}|^177\d{8}|$',num):
        print('电信号码!')
    else:
        print('该手机号码不存在!')


if __name__ == '__main__':
    main()
小结:正则表达式里的分枝条件指的是有几种规则,如果满足其中任意一种规则都应该当成匹配,具体方法是用 | 把不同的规则分隔开

版本控制:

1.Subversion 必须有中央服务器

2.Git 可以先在本地同步

git –version 确认是否安装Git

git init 加入版本控制

git add. 添加

git status 查看

git commit -m ‘项目的初始版本’ 提交并写原因

git reset HEAD^ 回到上一版本

git reset 版本号 回到对应版本号的版本

git pull 网址 与服务器上代码同步

git push origin master 往服务器上传代码

git clone 网址 下载项目

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值