day10-字符串作业2

本文展示了如何使用Python编程实现字典的键值交换、从字符串中提取字母、自定义capitalize函数、endswith功能、isdigit判断、upper转换及replace函数,涵盖了字符串和字典的基本操作。
摘要由CSDN通过智能技术生成
  1. 编写一个程序,交换指定字典的key和value。

    dict1 = {'a': 1, 'b': 2, 'c': 3}
    x = list(dict1)
    y = list(dict1.values())
    print(x, y)
    result = zip(y, x)
    print(dict(result))
    
      例如:dict1={'a':1, 'b':2, 'c':3}  -->  dict1={1:'a', 2:'b', 3:'c'}  
    
  2. 编写一个程序,提取指定字符串中所有的字母,然后拼接在一起产生一个新的字符串

    num = '12a&bc12d-+'
    result = [x for x in num if 91<=ord(x)<=123]
    print(''.join(result))
    
       例如: 传入'12a&bc12d-+'   -->  'abcd'  
    
  3. 写一个自己的capitalize函数,能够将指定字符串的首字母变成大写字母

    num = input()
    result = list(num)
    for i in range(len(result)):
        if 97<=ord(result[i])<=123:
            result[i]=chr(ord(result[i])-32)
            break
    print(''.join(result))
    
      例如: 'abc' -> 'Abc'   '12asd'  --> '12asd'
    
  4. 写程序实现endswith的功能,判断一个字符串是否已指定的字符串结束

    num = 'abc231ab'
    n = 'ab'
    for i in range(len(num)):
        if num[i] == n[0]:
            if num[i+1] == n[1]:
                print('Ture')
                break
        else:
            print('False')
    
       例如: 字符串1:'abc231ab' 字符串2:'ab' 函数结果为: True
            字符串1:'abc231ab' 字符串2:'ab1' 函数结果为: False
    
  5. 写程序实现isdigit的功能,判断一个字符串是否是纯数字字符串

    num = input()
    z = 'False'
    num_new = []
    for i in range(len(num)):
        if '0' <= num[i] <= '9':
            num_new += 'True'
        else:
            num_new += 'False'
    for i in range(len(num_new)):
        if num_new[i] == z[0]:
            if num_new[i + 1] == z[1]:
                if num_new[i + 2] == z[2]:
                    if num_new[i + 3] == z[3]:
                        if num_new[i + 4] == z[4]:
                            print('False')
                            break
        print('True')
    
       例如: '1234921'  结果: True
             '23函数'   结果: False
             'a2390'    结果: False
    
  6. 写程序实现upper的功能,将一个字符串中所有的小写字母变成大写字母

    num = 'abH23好rp1'
    result = list(num)
    for i in range(len(result)):
        if 97 <= int(ord(result[i])) <= 123:
            result[i] = chr(int(ord(result[i])) - 32)
    print(''.join(result))
    
        例如: 'abH23好rp1'   结果: 'ABH23好RP1'   
    
  7. 写程序获取指定序列中元素的最大值。如果序列是字典,取字典值的最大值

    num = [-7, -12, -1, -9]
    m = num[0]
    for i in range(len(num)):
        if int(num[i]) > m:
            m = int(num[i])
    print(m)
    
       例如: 序列:[-7, -12, -1, -9]    结果: -1   
            序列:'abcdpzasdz'    结果: 'z'  
            序列:{'小明':90, '张三': 76, '路飞':30, '小花': 98}   结果: 98
    
  8. 写程序实现replace函数的功能,将指定字符串中指定的旧字符串转换成指定的新字符串

    str1 = ' how are you? and you? '
    str2 = 'you'
    str4 = ''
    for x in range(len(str1)):
        if str1[x] == str2[0] and str1[x + 1] == str2[1] and str1[x + 2] == str2[2]:
            str4 += 'me'
        elif str1[x] == str2[1] and str1[x + 1] == str2[2]:
            str4 += ''
        elif str1[x] == str2[2] and str1[x - 1] == str2[1] and str1[x - 2] == str2[0]:
            str4 += ''
        else:
            str4 += str1[x]
    print(str4)
    
        例如: 原字符串: 'how are you? and you?'   旧字符串: 'you'  新字符串:'me'  结果: 'how are me? and me?'
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值