python中字符串的操作及练习题

1.字符串的特性

  • 索引

      In [1]: s = 'hello'                                                             
      In [2]: print(s[0])                                                             
      h
      In [3]: print(s[1])                                                             
      e
    
  • 切片

      In [4]: s = 'hello'                                                             
      In [5]: print(s[0:3])    显示下标0到下标3的字符                                                       
      hel
      In [10]: print(s[0:4:2])   (start:end:step)                                                     
      hl
      In [6]: print(s[-1])      显示倒数第一个字符                                                      
      o
      In [11]: print(s[:2])    	显示前两位字符                                                        
      he
      In [7]: print(s[:-1])     显示倒数第一个之前的所有字符                                                      
      hell
      In [8]: print(s[::-1])    倒序输出                                                        
      olleh
      In [14]: print(s[1:])	    显示第一个字符除外的其他字符                                                       
      ello
      In [15]: print(s[:])      显示所有字符                                                  
      hello
    
  • 重复

      In [16]: print(s *3)                                                            
      hellohellohello
    
  • 连接

      In [17]: print(s+'world')                                                       
      helloworld
    
  • 成员操作符

      In [18]: s='hello'                                                              
      In [19]: print('h' in s)                                                        
      True
    
  • for循环(迭代)
    python中字符串的操作及练习题_第1张图片

练习一:

	"""
	回文数
	"""
	a = (input('请输入一个数字'))
	b = (a[::-1])     ##只能使用字符串类型
	if a == b:
	    print('%s是回文数' % a)
	else:
	    print('%s不是回文数' % a)

在这里插入图片描述
练习二:

"""
判断字符串中的元素
"""
s = '1234hoU'
print(s.isdigit())		字符串s是否是数字类型
print(s.isalpha())		字符串s是否是字母组成
print(s.isalnum())		字符串s是否时数字或字母组成
print(s.islower())		字符串s是否有小写字母,没有大写字母
print(s.isupper())		字符串s是否有大写字母,没有小写字母

python中字符串的操作及练习题_第2张图片

print(s.istitle())  是否只有首字母大写

python中字符串的操作及练习题_第3张图片
练习三:s.endswith()

	"""
	判断文件类型(判断字符串以什么结尾)
	"""
	filename=input('请输入文件名')
	if filename.endswith('.log'):			#如果文件以.log结尾
		print('yes')
	else:
		print('no')

在这里插入图片描述
练习四:s.startswith()

"""
判断以什么开头
"""
url=input('输入:')
if url.startswith('http'):
	print('ok')
else:
	print('no')

在这里插入图片描述

2.去除字符串的空格

  • 去除空格

      In [21]: s = '        ho         '                                              
      
      In [22]: s.strip()             去除空格                                                 
      Out[22]: 'ho'
      
      In [23]: s.rstrip()            去除右边空格                                              
      Out[23]: '        ho'
      
      In [24]: s.lstrip()            去除左边空格                                           
      Out[24]: 'ho         '
      
      In [25]: s.rlstrip()     
    
  • 去除置表符和换行符

      s = '\nhello\t\t'
      print(s)
      print(s.strip()) 			执行结果图中的第一个hello上有一行是因为换行,右边还有一格,是因为置表符;第二个hello只有hello字符。
    

python中字符串的操作及练习题_第4张图片

  • 去除左右字符

      In [38]: s = 'ahelloa'                                                          
    
      In [40]: s.strip('a')       去除a字符,如果左右都有同时去除                                             
      Out[40]: 'hello'	
      
      In [41]: s.lstrip('ah')     去除左边字符a                                                   
      Out[41]: 'elloa'
      
      In [42]: s.rstrip('a')      去除右边字符a                                                 
      Out[42]: 'ahello'
    

3.字符串的常用操作

  • 字符串的搜索与替换

      s = 'hello world hello'
    
      print(s.find('hello'))		 #find找到子串,并返回最小的索引
      print(s.find('world'))
      print(s.rfind('hello'))	 		#rfind找到子串,并返回最大索引
      
      print(s.replace('hello','23')) 	 #替换字符
    

python中字符串的操作及练习题_第5张图片

  • 字符串对齐

      print('学生管理系统'.center(30))
      print('学生管理系统'.center(30,'*'))
      print('学生管理系统'.ljust(30,'*'))
      print('学生管理系统'.rjust(30,'*'))
      print('学生管理系统'.rjust(30,'@'))
    

python中字符串的操作及练习题_第6张图片

  • 字符串的统计

      print('hello'.count('l'))
      print('hello'.count('ll'))
      print(len('hello'))
    

在这里插入图片描述

  • 字符串的分离与连接
    1)分离

      s = '172.25.254.250'
      print(s.split('.'))
    

在这里插入图片描述
python中字符串的操作及练习题_第7张图片
2)连接:
python中字符串的操作及练习题_第8张图片

练习题:

练习一:

	"""
	判断变量是否合法
	"""
	while True:
	    s = input('请输入字符(q退出):')
	    if s == 'q':
	        exit()
	    if s[0].isalpha() or s[0] == '_':
	        for i in s[1:]:
	            if i.isalnum() or i == '_':
	                continue
	            else:
	                print('不合法')
	                break
	        else:
	             print('合法')
	    else:
	        print('不合法')

python中字符串的操作及练习题_第9张图片

练习二:

"""
判断出勤,A代表缺勤,L代表迟到,P代表到。
出现不大于一次A,并不超过两次L,会奖励
"""
方法一:
s = input('请输入出勤情况')
if s.count('A') <= 1 and s.count('LLL') == 0:
    print('奖励')
else:
    print('不合格')

在这里插入图片描述

	方法二:   
	s = input('请输入出勤情况')
	print(s.count('A') <= 1 and s.count('LLL') == 0)

在这里插入图片描述
练习三:

"""
给定一个句子(只包含字母和空格),将句子中的单词位置反转
如:I like world --> world like I
输入描述:
对于每个测试示例,每组站一行,包含一个句子
输出句子中单词反转后形成的句子
"""
方法一:
s = input('输入:')
s1 = s.split(' ')
print(' '.join(s1[::-1]))
方法二:
print(' '.join(input('输入:').split(' ')[::-1]))

在这里插入图片描述
练习四:

"""
输入两个字符串,从第一个字符串中删除第二个字符串中所有字符。
例如:输入"abcde"和"be"
字符串变为“acd”
"""
s1 = input('请输入第一个字符串')
s2 = input('请输入第二个字符串')
for i in s1:
    for i in s2:
            s1 = s1.replace(i, '')    ##替换函数
print(s1)

在这里插入图片描述

你可能感兴趣的:(运维,python)