zoukankan      html  css  js  c++  java
  • Python:如何判断字符串a是否以字符串b开头或结尾

    方法一:使用正则表达式的^和$实现

    '^000':表示,只匹配字符串的开头,若开头是 '000' ,则返回 ['000'] ;

    '000$':表示,只匹配字符串的结尾,若结尾是 '000' ,则返回 ['000'] ;

    #弊端:一次只能匹配一种能,如首/尾是000,而不能同时判断000/111/222等多种情况;

    方法二:使用字符串的str.startswith()和str.endswith()方法,返回True/False

    #多钟情况进行匹配时,参数使用元组

    list_1 = '00100100100'
    
    #一、判断字符串首位是否是00
    print(list_1.startswith('00'))
    #输出:True
    print(list_1.endswith('00'))
    #输出:True
    
    #二、判断字符串list_1的首位字符是否是00或者001
    #多个条件需要封装成元组: ('00', '001'),此处只能是元组,不能是列表;
    print(list_1.startswith(('00', '001')))
    #输出:True
    print(list_1.endswith(('00', '001')))
    #输出:True

    案例:编写程序给文件夹中所有的.sh文件和.py文件,加上用户可执行权限

    #什么是用户可执行权限?

    #一种权限对应一种掩码,什么是掩码?

    import os, stat
    
    #os模块:系统调用模块
    #stat模块:与文件状态相关
    
    #读取某文件夹下所有文件的文件名,以列表形式返回:['文件名1', '文件名2']
    name_1 = os.listdir('文件路径')
    name_2 = [x for x in name_1 if x.endswith(('.py', '.sh'))]
    
    #查看文件状态,可获取文件各种属性
    a = os.stat('文件名')
    
    #查看文件的其中一个属性,st_mode为文件的一个权限属性
    #a1是一个十进制数,若想更直观的通过数值知道文件属性,可将此十进制数转换为8进制数;
    #为什么八进制数更能看出文件属性??
    a1 = os.stat('文件名').st_mode
    
    #修改文件权限:先找到'用户执行权限'所对应的掩码,将此掩码与a1取或
    #获取文件掩码
    a2 = stat.S_IXUSR
    
    #使用os模块下的chmod()方法改变文件权限,即两种掩码取或
    os.chmod('文件名', os.stat('文件名').st_mode | stat.S_IXUSR)
  • 相关阅读:
    输出最大值 (10 分)
    对象数组初始化 (10 分)
    2018Final静态成员(黑名单)
    寻找回文子串(python)
    cpp-week_one-错题整理
    Python 读入多个整数
    C语言学习—strcpy()和strcat()
    javascript数学对象、自定义对象10.0
    javascript基础DOM对象6.2
    javascript基础DOM对象6.1
  • 原文地址:https://www.cnblogs.com/volcao/p/8762798.html
Copyright © 2011-2022 走看看