day9 - 字符串作业

# 1.编写一个程序,交换指定字典的key和value。
# 例如: dict1 = {'a': 1, 'b': 2, 'c': 3} -->  dict1 = {1: 'a', 2: 'b', 3: 'c'}
# dict1 = {'a': 1, 'b': 2, 'c': 3}
# dict2  ={ }
# for key,value in dict1.items():
#     dict2[value] = key
# print(dict2)
# dict1 = dict((value,key) for key,value in dict1.items())
# print(dict1)

#
# 2.编写一个程序,提取指定字符串中所有的字母,然后拼接在一起产生一个新的字符串
# 例如: 传入 '12a&bc12d-+' -->  'abcd'
# str2 = '12a&bc12d-+'
# str22 = ''.join([x for x in str2 if 'a' <= 'z'])
# print(str22)
#
# 3.写一个自己的capitalize函数,能够将指定字符串的首字母变成大写字母,例如: 'abc' -> 'Abc'   '12asd' --> '12asd'
# str3 = 'abc'
# print(''.join(chr(ord(str3[0]) - 32) + str3[1:len(str3)]))
# print(str3.capitalize())

#
# 4.写程序实现endswith的功能,判断一个字符串是否已指定的字符串结束
# 例如:
# 字符串1:'abc231ab'   字符串2: 'ab'       函数结果为: True
# 字符串1: 'abc231ab'  字符串2: 'ab1'      函数结果为: False
# str41 = 'abc231ab'
# new_str41 = 'ab'
# str42 = 'abc231ab'
# new_str42 = 'ab1'
# print(new_str41 == str41[len(str41)-len(new_str41):len(str41)])
# print(new_str42 == str42[len(str42)-len(new_str42):len(str42)])

#
# 5.写程序实现isdigit的功能,判断一个字符串是否是纯数字字符串,
# 例如:
# '1234921'结果: True
# '23函数'结果: False
# 'a2390'结果: False
# str51 = '1234921'
# str52 = '23函数'
# str53 = 'a2390'
# for i in str51:
#     if not('0' <= i <= '9'):
#     # if i not in ('0','9'):  用in()表示一个范围的写法是什么
#         print('False')
#         break
# else:
#     print('Ture')
#
#
# 6.写程序实现upper的功能,将一个字符串中所有的小写字母变成大写字母
# 例如: 'abH23好rp1'
# 结果: 'ABH23好RP1'

# str6 = 'abH23好rp1'
# new_str6 = ''
# for i in str6:
#     if 'a' <= i <= 'z':
#         new_str6 += chr(ord(i) - 32)
#     else:
#         new_str6 += i
# print(new_str6)

#
# 7.写程序获取指定序列中元素的最大值。如果序列是字典,取字典值的最大值
# 例如:
# 序列:[-7, -12, -1, -9]  结果: -1
# 序列: 'abcdpzasdz'  结果: 'z'
# 序列: {'小明': 90, '张三': 76, '路飞': 30, '小花': 98}  结果: 98

# x7 = [-7, -12, -1, -9]
# x7 = 'abcdpzasdz'

# x7 = {'小明': 90, '张三': 76, '路飞': 30, '小花': 98}
# num = 1
# if type(x7) in (list, str):
#     Max_num = x7[0]
#     for i in range(len(x7) - 1):
#         x7[i] < x7[i+1]
#         Max_num = x7[i+1]
# elif type(x7) == dict:
#     for i in x7:
#         if num == 1:
#             Max_num = x7[i]
#             num += 1
#         if Max_num < x7[i]:
#             Max_num = x7[i]
# print(Max_num)

#
# 8.写程序实现replace函数的功能,将指定字符串中指定的旧字符串转换成指定的新字符串,例如: 原字符串: 'how are you? and you?'旧字符串: 'you'新字符串: 'me'结果: 'how are me? and me?'
# str8 = 'how are you? and you?'
# old8 = 'you'
# New8 = 'me'
# New_str8 = ''
# i = 0
# while i < len(str8):
#     if str8[i:i+3] == old8:
#         New_str8 += New8
#         i += 3
#     else:
#         New_str8 += str8[i]
#         i += 1
# print(New_str8)

#
# 9.写程序实现split的功能,将字符串中指定子串作为切割点对字符串进行切割,例如:原字符串: 'how are you? and you?'切割点: 'you'结果: ['how are ', '? and ', '?']
str9 = 'how are you? and you?'
old9 = 'you'
list9 = []
num = 0
for i in range(len(str9)):
    if old9 == str9[i:i+len(old9)]:
        list9.append(str9[num:i])
        num = i + len(old9)
else:
    list9.append(str9[num:len(str9)])
print(list9)
#
# 10.用思维导图总结四大容器:列表、字典、元组、集合
# 列表:str = ' ' -   可变序列,有序,任何类型都可以作为元素
# 字典:dict = {key = value}   -   可变序列,无序,以键值对形式存在
# 元组:tuple = (1,2,3)    -   不可变序列,有序,必须是不可变的类型才可以作为元素
# 集合:set = {value1,value2}  -   可变序列,无序,不能有重复元素,任何类型都可以作为集合的元素
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值