1.字符串的定义
a = “hello”
b = ‘westos’
c = “what’s up”
d = ‘what’s up’
e = “”"
用户管理系统
1.添加用户
2.删除用户
3.显示用户
“”"
print(a)
print(b)
print©
print(d)
print(e)
print(type(e))
2.字符串的特性
#索引: 0,1,2,3,4 索引值默认从0开始
s = ‘hello’
print(s[1])
print(s[0])
#切片
print(s[0:3]) #切片的规则: s[start?step] 从start开始,到end-1结束,步长:step
print(s[0:4:2])
#显示所有字符
print(s[:])
#显示前3个字符
print(s[:3])
#字符串逆序输出
print(s[::-1])
#除了第一个字符以外,其他全部输出
print(s[1:])
#重复
print( s * 10)
#连接
print(‘hello’ + ’ ’ + ‘world’)
print(‘hello’ + s + ‘world’)
#成员操作符
print(‘h’ in s)
print(‘q’ in s)
3.回文数判断
num = input('Num:')
if num == num[::-1]:
print('回文数')
else:
print('不是')
4.字符串判断
#判断字符串里面每个元素是否为某种类型
#digit:判断是否为数字
print('123'.isdigit())
print('123abc'.isdigit())
#title:首字母大写,其余字母小写
print('Hello'.istitle())
print('HeLlo'.istitle())
#upper:大写转换,isupper:判断是否为大写,lower:小写转化,islower:判断小写
print('hello'.upper())
print('hello'.isupper())
print('hElLo'.lower())
print('hElLo'.islower())
#isalnum:判断字符串是否为字母或数字
print('hello123'.isalnum())
#isalpha:判断是否为字母
print('123'.isalpha())
print('abc'.isalpha())
#isinstance:判断字符串类型
print(isinstance(1,int))
print(isinstance('a',str))
print(isinstance(1,str))
5.字符串去掉开头和结尾
#strip() 方法用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列
#lstrip()去除左边字符串头尾指定的字符(默认为空格或换行符)或字符序列
#rstrip()去除右边字符串头尾指定的字符(默认为空格或换行符)或字符序列
s = 'hello'
s1 = ' hello'
print(s.strip())
print(s1)
print(s1.strip())
s = 'hello '
s1 = ' hello'
print(s.rstrip())
print(s1.lstrip())
print(s1.strip())
6.字符串匹配开头和结尾
filename = 'hello.log'
if filename.endswith('.log'):
print(filename)
else:
print('error')
url1 = 'file:///mnt'
url2 = 'ftp://172.25.254.250/pub'
url3 = 'http://172.25.254.250/index.html'
a=[url1,url2,url3]
for i in a:
if i.startswith('http://'):
print('爬取该网页')
else:
print('错误网页')
7.字符串练习
变量名是否合法:
1.变量名只能由字母、数字、下划线组成
2.只能以字母或下划线开头
#1.变量名第一个字符是否为字母或者下划线
#2.如果是,继续 --> 4
#3.如果不是,报错 , 退出
#4.依次判断除了第一个字符以外的其他字符
#5.判断是否为字母数字或者下划线
while True:
s = input('变量名:')
if s == 'exit':
print('欢迎下次使用')
break
if s[0].isalpha() or s[0] == '_':
for i in s[1:]:
if not (i.isalnum() or i == '_'):
print('%s变量名不合法' %s)
break
else:
print('%s变量名合法' %s)
else:
print('%s变量名不合法' %s)
8.字符串的搜索和替换
s = 'hello world hello'
#find找到子串,并返回最小的索引
print(s.find('hello'))
print(s.find('world'))
#rfind找到子串,并返回最大的索引值
print(s.rfind('hello'))
#替换字符串中所有的‘hello’为‘westos’
print(s.replace('hello','westos'))
9.字符串的对齐
print('学生管理系统'.center(30))
print('学生管理系统'.center(30,'*'))
print('学生管理系统'.center(30,'@'))
print('学生管理系统'.ljust(30,'*'))
print('学生管理系统'.rjust(30,'*'))
10.字符串的统计(count)
print('hello'.count('l'))
print('hello'.count('ll'))
print(len('hello'))
11.字符串的分离和连接
s = '172.25.254.250'
s1 = s.split('.')
print(s1) ##以'.'分割
print(s1[::-1])
date = '2019-03-17'
date1 = date.split('-') ##以'-'分割
print(date1)
print(''.join(date1)) ##以空字符连接
print('/'.join(date1)) ##以‘/’连接
12.练习
给定一个字符串来代表一个学生的出勤纪录,这个纪录仅包含以
下三个字符:
‘A’ : Absent,缺勤
‘L’ : Late,迟到
‘P’ : Present,到场
如果一个学生的出勤纪录中不超过一个’A’(缺勤)并且不超过两>个连续的’L’(迟到),
那么这个学生会被奖赏。
你需要根据这个学生的出勤纪录判断他是否会被奖赏。
示例 1:
输入: “PPALLP”
输出: True
示例 2:
输入: “PPALLL”
输出: False
student=input('输入学生考勤信息:')
A=(student.count('A'))
L=(student.count('LLL'))
if A>1 or L>0:
print('坏孩子,不给奖励')
else:
print('好孩子,给你奖励')
输入
hello xiao mi
输出
mi xiao hello
(1)
a = str(input('请输入一个字符串:'))
b = a.split(' ')
c = b[::-1]
long = len(c)
for i in c:
print(i,end=' ')
(2)
print(' '.join(input().split()[::-1]))
输入
They are students.
aeiou
输出
Thy r stdnts.
s1 = input('s1:')
s2 = input('s2:')
for i in s1:
if i in s2:
s1 = s1.replace(i,'')
print(s1)