字符串内置方法
####判断是否是字母:isalpha() 判断是否是数字(): isdigit()
s = 'abc16'
result = s.isalpha() #Flase 返回布尔型 isdigit用法一样
#### join()
str = '-'.join('abc') #返回值:a-b-c
list = ['a','b','c']
str = '*'.join(list1) #返回值:a*b*c
####去除空格 lstrip() rstrip() strip()
s = ' http://www.cnblogs.com/adong- '
result = s.lstrip() #去除左侧的空格 rstirp() 去除右侧空格 strip() 去除左右空格
####分割字符串 split()
s = 'hello world hello kitty'
result = s.split(' ') #以空格切割,并放入列表 ['hello', 'world', 'hello', 'kitty']
result = s.split(' ',2) #以空格分割,分割两次 ['hello', 'world', 'hello kitty']
####count
result = s.count(' ') #count('args') 求字符串中args的个数
####字符串运算符
s1 = 'a'
s2 = 'b'
s1 = s1+s2 #拼接
s2 = s2*5 #倍数
#### in 在什么什么里面
name = 'steven'
result = 't' in name #返回布尔型 按整个字符串查找 eg:t存在 但是tv不存在
result = 'tv' not in name #Ture
####查找:find() rfind() lfind() index()
s1 = 'index luck lunck goods'
result = s1.find('R') #返回-1代表没找到
result = s1.find('l') #返回值6 (向右查找,下标从零开始,包括空格,如果找到,则返回字母第一次出现的位置)
####字符串格式化
print('%s说:%s'%name,"你好“)) #steven说:你好
# r 保留原格式
print(r'%s说:%s\r\n') #%s说:%s\r\n
#### [ ] [start:end]
firename='picture.png'
print(filename[1]) #返回值 i ,截取,下标从0开始 只能截取一个字符
print(filename[0:5]) #范围截取 包前不包后
#省略
print(filename[:5]) #省略后面,一直取到末尾 省略前面,默认0
#负数
print(filename[8:-1]) #从8开始,到末尾-1 就是不包含末尾
print(filename[:-4]) #从开始 不包含末尾4个
print(filename[-2:]) #包前不包后 往后走没有了,包前2个
print(filename[-5:-1])#包前不包后
#倒叙输出 [::]
print(filename[::-1]) # -1表示方向,倒叙 1:正序
print(filename[-1:-5:-1]) #[start:end:方向]
#规则 先按方向走 在方向的基础在开始取值
#eg print(filename[0:5:-1])
# -1,<<<从后往前走,从零开始取前取,零前面没有值,所以为空
print([filename[::2]]) #2表示步长,正序按步长取值 -2 倒叙按步长取
#字符串的内建函数:声明一个字符串,默认可以调用内建函数(系统准备好的一些函数)
#第一部分:大小写相关的
#capitalize() title()/istitle() upper()/isupper() lower()/islower()
message='i am so cool!'
m=message.capitalize() #首字符转换为大写
print(m)
m=message.title() #每个单词的首字符转换为大写
print(m)
m=message.istitle() #判断首字符是否大写 返回布尔型
print(m)
m=message.upper() #全部转换为大写
print(m)
m=message.lower() #将大写全部转换为小写
print(m)
# 验证码案例
s='ASDFSAWsdfsdfa1264'
print(len(s)) #求字符串长度,返回整型
import random
ran=random.randint(1,len(s)-1)
print(ran)
print(s[ran])
# IndexError: string index out of range :下标或索引错误,超出范围
#下标是从零开始的,而len是从一开始的,所以下标得len-1
#务必注意下标
#验证码案例######################################
# s="ASDFGHJKLZXCVBNMQWERTYUIOPqwertyuiopasdfghjklzxcvbnm"
# import random
# ran=random.randint(1,len(s)-1)
# code=s[ran:ran+4] #四个字符
# print('你的验证码%s',code)
# usr=input('请输入验证码:')
# if code.lower()==usr.lower() or code==usr or code.upper()==usr.upper():
# print('验证成功!')
# else:
# print('验证错误!')
#find('要查找的字符’,start ,end)
posi = s1.find('1',result+1,len(s1) #指定位置查找,即result查找到的第六位往后继续查找,用s1的长度结尾
url = ‘http://www.cnblogs.com/adong-'
p = url.rind('/') # right find 从右侧开始查找 lfind:left find 从左侧开始查找 index 跟find方法一样,只不过index找不到字符串会报异常
替换:replace('查找对象’,‘替换’,[替换次数])
replc = s1.replace(' ','#') #将空格替换成#
#encode编码 decode解码
msg='哈哈哈哈'
print(msg)
result=msg.encode('utf-8')
#默认 utf-8 gbk中文 gbk-2312 简体中文
print(result)
m=result.decode('utf-8')
print(m)
##################
#字符串内建函数: startwith() endswith() 返回值布尔类型
#startwith()判断是否是以某某开头 endswith()或者结尾
filename = 'a.doc'
result= filename.endswith('doc')
print(result)
# s= 'hello'
# result=s.startwith('H') #区分大小写,并且不当当只判断一个字母
# print(result)
##文件上传案例
path = input('请选择文件:') #c:\file\a.jpg
p= path.rfind('\\')
filename = path[p+1:]
if filename.endswith('jpg') :
print(filename)

浙公网安备 33010602011771号