zoukankan      html  css  js  c++  java
  • 0512--习题

    #16、实现字符串的replace方法
    '''
    def replace(s,old_str,new_str):
        result =""
        for i in range(len(s)):
            if s[i:i+len(old_str)]==old_str:
                result +=new_str
            else:
                result +=s[i]
        return result
    print(replace('this','is','ewo'))
    '''

    #17、实现字符串的split方法
    '''
    def split(s,str=" "):
        result =[]
        index =0
        for i in range(len(s)):
            if s[i:i+len(str)]==str:
                result.append(s[index:i])
                index =i+len(str)
        result.append(s[index:i])
        return result
    print(split('this is string example'))
    '''

    #18、实现字符串的strip方法
    '''
    def strip(s,str=" "):
        result =""
        for i in range(len(s)):
            if s[i]!=str:
                result +=s[i:]
                break
        for j in range(len(result)-1,0,-1):
            if result[j]!=str:
                result =result[:j+1]
                break
        return result
    print(strip(" this "))
    print(strip(" a b c "))
    '''

    #19、报数问题:有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),
    #凡报到3的人退出圈子,问最后留下的是原来第几号的那位
    '''
    s=list(range(1,10))
    def func(s,i=1):
        if not (isinstance(s,list) and len(s)>=3):
            return None
        while 1:
            result =[]
            for i in range(len(s)):
                if (i+1)%3==0:
                    continue
                else:
                    result.append(s[i])
            s=result
            if len(s)<3:
                break
        return s
    for j in func(s):
        print(s.index(j)+1)
    print(func(s))
    '''
    #20、由单个字母组成的list,从键盘读入两个整数m、n(n>m),
    #打印出list[m,n]之间的字母能组成的所有n-m+1位不同的字符串
    import random
    import math
    
    list = ['a', 'b', 'c','d','e', 'f', 'd', 'h', 'f', 'g'] 
    m = int(input("输入整数m:"))
    n = int(input("输入整数n:"))
    while 1:
         if n <= m:
             print("输入的n要大于或等于m")
             n = int(input("请重新输入整数n:"))
         else:
             break
    
    list_tmp = list[m:n] 
    print(math.factorial(len(list_tmp))) 
    result = [] 
    while 1:
         random.shuffle(list_tmp)
       #将序列的所有元素随机排序
         str1 = "".join(list_tmp)
         if str1 not in result:
             result.append(str1)
         if len(result) == math.factorial(len(list_tmp)):
      #math.factorial算阶乘的方法
             break
    
    print(result)
     
     
     
     
     
  • 相关阅读:
    1553: Good subsequence (很奇妙的set模拟题,也可以直接暴力)
    1550: Simple String (做得少的思维题,两个字符串能否组成另外一个字符串问题)
    1549: Navigition Problem (几何计算+模拟 细节较多)
    1548: Design road (思维题 做法:三分找极值)
    Python 正则表达式入门(初级篇)
    Python中的正则表达式教程
    软件自动化测试的学习步骤
    自动化测试的Selenium的python版安装与使用
    自动化测试一些问题
    自动化测试
  • 原文地址:https://www.cnblogs.com/wenm1128/p/10854088.html
Copyright © 2011-2022 走看看