问题15:如何判断字符串a是否以字符串b开头或结尾
方法一:使用正则表达式的^和$实现
'^000':表示,只匹配字符串的开头,若开头是 '000' ,则返回 ['000'] ;
'000$':表示,只匹配字符串的结尾,若结尾是 '000' ,则返回 ['000'] ;
#弊端:一次只能匹配一种能,如首/尾是000,而不能同时判断000/111/222等多种情况;
方法二:使用字符串的str.startswith()和str.endswith()方法,返回True/False
#多钟情况进行匹配时,参数使用元组
list_1 = '' #一、判断字符串首位是否是00
print(list_1.startswith(''))
#输出:True
print(list_1.endswith(''))
#输出:True #二、判断字符串list_1的首位字符是否是00或者001
#多个条件需要封装成元组: ('00', '001'),此处只能是元组,不能是列表;
print(list_1.startswith(('', '')))
#输出:True
print(list_1.endswith(('', '')))
#输出: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)
问题15:如何判断字符串a是否以字符串b开头或结尾的更多相关文章
- 13、如何拆分含有多种分隔符的字符串 14、如何判断字符串a是否以字符串b开头或结尾 15、如何调整字符串中文本的格式 16、如何将多个小字符串拼接成一个大的字符串
13.如何拆分含有多种分隔符的字符串 import re s = "23:41:2314\1234#sdf\23;" print(re.split(r'[#:\;]+',s)) ...
- C#算法之判断一个字符串是否是对称字符串
记得曾经一次面试时,面试官给我电脑,让我现场写个算法,判断一个字符串是不是对称字符串.我当时用了几分钟写了一个很简单的代码. 这里说的对称字符串是指字符串的左边和右边字符顺序相反,如"abb ...
- String的两个API,判断指定字符串是否包含另一字符串,在字符串中删除指定字符串。
// 在字符串中删除指定字符串. String phoneNum="1795112345"; phoneNum = phoneNum.replace("17951&quo ...
- php 判断字符串在另一个字符串中位置
$email='user@example.com'; //定义字符串$result=strstr($email,'@'); //返回子字符串echo $result; / ...
- Mysql查找如何判断字段是否包含某个字符串
Mysql查找如何判断字段是否包含某个字符串 有这样一个需求,在Mysql数据库字符串字段(权限)中,用户有多个不同的邮箱,分别被‘,’分开,现在要取出某个邮箱的所有成员列表. 假设有个表: ...
- 【功能代码】---3 JS判断字符串是否包含某个字符串
JS判断字符串是否包含某个字符串 var str ="abc"; if(str.indexOf("bc")>-1){ alert('str中包含bc字符串 ...
- go golang 判断base64数据 获取随机字符串 截取字符串
go golang 判断base64数据 获取随机字符串 截取字符串 先少写点,占个坑,以后接着加. 1,获取指定长度随机字符串 func RandomDigits(length int) strin ...
- python_如何判断字符串a以某个字符串开头或结尾?
案例: 某文件系统目录下有一系列文件: 1.c 2.py 3.java 4.sh 5.cpp ...... 编写一个程序,给其中所有的.sh文件和.py文件加上可执行权限 如何解决这个问题? 1. 先 ...
- Python Cookbook(第3版)中文版:15.16 不确定编码格式的C字符串
15.16 不确定编码格式的C字符串¶ 问题¶ 你要在C和Python直接来回转换字符串,但是C中的编码格式并不确定. 例如,可能C中的数据期望是UTF-8,但是并没有强制它必须是. 你想编写代码来以 ...
- mysql判断表里面一个逗号分隔的字符串是否包含单个字符串、查询结果用逗号分隔
1.mysql判断表里面一个逗号分隔的字符串是否包含单个字符串 : FIND_IN_SET select * from tablename where FIND_IN_SET(传的参数,匹配字段) 例 ...
随机推荐
- 加密php源代码
<?php function RandAbc($length = "") { //返回随机字符串 $str = "ABCDEFGHIJKLMNOPQRSTUVWXY ...
- Delphi 7里Messages.pas里所有104种重定义消息种类,180种不同的消息名称
Delphi 7里Messages.pas里所有消息.经统计,共104种重定义消息种类,方便使用,180种不同的消息名称.省得像VC里一样,处处自己解析wParam和LParam参数进行分析.有空我要 ...
- ThoughtWorks(中国) 程序员读书雷达
ThoughtWorks(中国)程序员读书雷达 软件业的特点是变化.若要提高软件开发的技能,就必须跟上技术发展的步伐.埋首醉心于项目开发与实战,固然能够锤炼自己的开发技巧,却难免受限于经验与学识.世界 ...
- scala与java之间的那些事
scala与java之间的关系,我认为可以用一句话来开头:scala来源于java,但又高于java. scala的设计者Martin Odersky就是一个JAVA控,这位牛人设计了javac和编写 ...
- iOS8 with Swift
Ref:iOS8 Day-by-Day Ref:iOS8-day-by-day source Ref:Let's Swift Ref:Swift 代码库 Ref:iOS Apprentice Thir ...
- Ubuntu中安装jdk环境
1.Installing default JRE/JDK sudo apt-get update sudo apt-get install default-jre sudo apt-get insta ...
- pinpoint插件开发实践
plugin基本结构 一个plugin主要由三部分构成,插件类增强定义(ProfilerPlugin接口实现).插件描述定义(TraceMetadataProvider接口实现).增强类拦截器实现(A ...
- iOS category 类别 和 extension 扩展
category 类别 又称为 分类 在ios项目开发中允许使用类别为现有的类添加新的方法,并不需要创建子类.通过类别我们可以动态地为现有的类添加新的方法,可以将类的定义模块化地布局到多个相关文件中 ...
- virtualbox 桥接 (转)
virtualbox 自带的网络配置模式要么选择host-only,要么bridge,对于经常使用virtualbox的同学一定想要像vmware一样的nat配置,既可以让host访问guest,又可 ...
- crond
Crond介绍 Crond是linux系统用来定期执行命令或程序的工具. 服务 /etc/init.d/crond 命令 crontab [root@rhel6 script]# crontab -h ...