基础篇18-周末综合习题

基础篇18-周末综合习题_第1张图片
Paste_Image.png
  • 内置方法,swapcase()大小写转换
  • upper()和lower() 全部变成大小写
  • isupper()和islower()
  • isdigit()判断是否为数字
  • python列表或字符串反转的方法
    a = 'sdchjrk' #注意这个字符串并没有按照字母的标准顺序排列
    
    #1. reversed()方法
    b = list(reversed(a))  # 注意reversed()返回的是一个对象
    
    #2. sort()方法,此方法并非真正的反转,而是按照字母顺序排序,并且注意此为原地排序,还是同一个对象
    #a.sort(reverse=True)   #注意这里会报错,sort()是列表的方法
    list(a).sort(reverse=True)
    
    #3. 分片步进
    a[::-1]
    
  • 去除a字符串内的数字后,请将该字符串里的单词重新排序(a-z),并且重新输出一个排序后的字符 串。
    (保留大小写,a与A的顺序关系为:A在a前面。例:AaBb)
    a = "aAsmr3idd4bgs7Dlsf9eAF"
    
    l = sorted(a)
    
    a_upper_list = []
    a_lower_list = []
    
    for x in l:
      if x.isupper():
        a_upper_list.append(x)
      elif x.islower():
        a_lower_list.append(x)
      else:
        pass
    
    for y in a_upper_list:
      y_lower =  y.lower()
      if y_lower in a_lower_list:
        a_lower_list.insert(a_lower_list.index(y_lower), y)
    
    print ''.join(a_lower_list)
    
  • 在python命令行里,输入import this 以后出现的文档,统计该文档中,"be" "is" "than" 的出现次数。
    import os
    m = os.popen('python -m this').read() 
    m = m.replace('\n', '')
    l = m.split(' ')
    print [(x, l.count(x)) for x in ['be', 'is', 'than']]
    
  • 1.4 请去除a字符串多次出现的字母,仅留最先出现的一个。例 'abcabb',经过去除后,输出 'abc'
    a = "aAsmr3idd4bgs7Dlsf9eAF"
    set_list = list(set(a))
    #这段代码没有验证,这里本来是将str转换成了list,调用的list.index。
    #这里没有传入参数也行么?
    #这里的正解是这样的,
    #key=a.index实际上是对每个list元素执行a.index(元素),返回其索引
    #a.index(sub)返回它的元素各自的索引
    #意思就是说,还按照原序列顺序排序
    set_list.sort(key=a.index)  
    print ''.join(set_list)
    
  • Python执行系统命令的方法 os.system(),os.popen(),commands
    请查看此文章
  • 关于index(),有一点疑问,str.index()和list.index()用法一样么?尚未寻找答案
    请查看此文章

你可能感兴趣的:(基础篇18-周末综合习题)