‘壹’ python字符串(特殊字符,取值,常用方法)
1.字符串
特殊字符串
\n:换行
\r:删除\r前面的字符
\t:制表符
例如:
s_1 = "人生苦短,\n我选Python!"
s_2 = "人生苦短,\r我选Python!"
s_3 = "人生苦短,\t我选Python!"
print(s_1) # 人生苦短,
print(s_2) # 我选Python
print(s_3) # 人生苦短, 我选Python!
遇到特殊字符,想去掉效果,把特殊字符转成普通字符
可以使用# r R
s_1 =r "人生苦短,\n我选Python!"
s_2 =R "人生苦短,\r我选Python!"
s_3 = "人生苦短,\t我选Python!"
2.字符串取值
特点:取头不取尾,正序从0开始,倒序从-1开始
[start:end:step] #step:表示间隔
s='hello python lemon'
print(s[6:12:1]) #正序 python 6,7,8,9,10,11
print(s[-12:-6:1]) # 倒序 python -12,-11,-10,-9,-8,-7
print(s[:])#hello python lemon 从头取到尾 [:]
print(s[6:]) #python lemon 从6取到尾 [start:]
print(s[:17])# [:end] 从开始取到16
获取s所有的偶数位的字母
print(s[0:17:2])
获取s所有的奇数位的字母
print(s[1:18:2])
倒序输出所有的字母
print(s[17::-1]) # 不可以写出是s[17:-1:-1] or s[17:0:-1]
3.常用方法
find() : 返回-1表示未找到子字符串,找到会返回对应字符的索引,子字符包含单个字符或多个字符
isdigit():判断是否全部是数字,是返回True,否返回False
replace(要替换的内容:替换的内容:替换的次数):指定替换内容以及被替换的字符串,并可以指定替换次数,默认是全部替换
split(指定字符,指定切割的次数):根据指定字符对字符串进行切割,默认全部切割
strip():去掉头和尾指定的字符
upper():字符串的字母转成大写
lower():字符串的字母转成小写
swapcase():字符串的字母大小互换
例如:
s='learn python in lemon'
print(s.find('n')) #返回找到字符串的索引
print(s.find(python))#返回找到的子字符串的第一个索引值--6
print(s.find('k')) # 返回-1
print(s.find('o',11))#从索引值为11的值开始找---19
print(s.isdigit())# 返回False
s1 = "******learn python*****"
print(s.strip("*"))# learn python
‘贰’ python re模块如何判断字符串中包含某些特定字符如文件名中不能包含'','/'等字符,如何检查
方法有很多,例如使用首尾位置标记^$+非法字符集[^]实现:
regex=r'^[^\/:*?"<>|]+$'#不能为空,不能含有/:*?"<>|等字符
tests=['abc_def',
'abc.def',
'abc/def',
'?"',
'']
matches=[iforiintestsifre.match(regex,i)]
print(matches)
还可以通过负向零宽断言(?!)等方式实现。
‘叁’ 【python】判断两个字符串的包含关系
题目:给定由字母组成的字符串s1和s2,其中,s2中字母的个数少于s1,陪芦如何判断s1是否包含s2?
分析:哈希法。
code:
str1 = 'aaaabbce'
str2 = 'abcbbaaad'
list1 = list(str1)
list2 = list(str2)
i = 0
hashTable1 = dict()
while i < len(str1):
if list1[i] not in hashTable1:
hashTable1[list1[i]] = 0
i += 1
i = 0
hashTable2 = dict()
while i < len(str2):
if list2[i] not in hashTable2:
hashTable2[list2[i]] = 0
i += 1
count = 0
for k, v in hashTable1.items():
if k in hashTable2:
锋轮 count += 1
else:
print("不包含"银乱信)
break
程序运行结果:
不包含
‘肆’ python判断字符串(string)是否包含(contains)子字符串的方法的代码
下边内容是关于python判断字符串(string)是否包含(contains)子字符串的方法的内容。
方法2:使用find函数实现contains的功能
s = "This be a string"
if s.find("is") == -1:
print "No 'is' here!"
else:
print "Found 'is' in the string."
‘伍’ python3判断是字符串中包含某些特定字符
在python中,前缀r或r表示“自然字符串”,特殊字符失去意义,所见即所得,这个设计类似perl的“单引号字符串”。
一般字符串newlines
are
indicated
by
\\n
等价于“自然字符串”
rnewlines
are
indicated
by
\n
和一般字符串相比,自然字符串里的\不再具有特殊含义,于是可以省去了一个\
在描述正则表达式时,推荐使用自然字符串,否则整行都是转义字符\
‘陆’ python如何检测字典的键中是否含有某串字符
1、说明
python中检测字典的键中是否含有某串字符,便利字典键值,再判断字符串是否在键值中即可。
2、示例代码:
# 定义一个字典
dic = {'1984/1/2': 123, '1984/1/3': 0, '1985/1/1': 156}
# 遍历字典键中是否包含1984
for key in dic:
if '1984' in key:
print('键值中包含字符串"1984"')
# 或者需要的其它操作
else:
print('键值中不包含字符串"1984"')
3、执行结果:
键值中包含字符串"1984"
键值中不包含字符串"1984"
键值中包含字符串"1984"
4、其它说明:
python使用for in直接操作字典就是遍历字典的键值,python使用in操作来判断字符串中是否包含子串最方便,要优于使用字符串的函数index或者find。
index函数在找不到子串时会报错,find函数会返回-1。
‘柒’ 在Python中,如何检查字符串是否只包含某些字符
#假如你的某些字符是s和a
some_letter=["s","a"]
ss="sadsahchcdsc"雹乱渣
other_letters=[]
forsinss:
ifnotsome_letter.count(s):
other_letters.append(s)
源悄flag陪亮=True
ifother_letters:
print"字符串含有别的字符",other_letters
‘捌’ 用python语言,如何判断一段字符串中是否包含指定的字符串
python的string对象没有contains方法,不用使用string.contains的方法判断是否包含子字符串,但是python有更简单的方法来替换contains函数。
方法1:使用 in 方法实现contains的功能:
site = ''
if "jb51" in site:
print('site contains jb51')
输出结果:site contains jb51
方法2:使用find函数实现contains的功能
s = "This be a string"
if s.find("is") == -1:
print "No 'is' here!"
else:
print "Found 'is' in the string."