Python---py.CheckiO练习题-elementary篇

Python--------py.CheckiO练习题
https://py.checkio.org/

Elementary

Multiply(Intro)

def mul_two(a: int, b: int) -> int:
    return a*b

First Word(simplified)

def first_word(s: str) -> str:
    a = s.split(" ")
    return a[0]

Acceptable Password I

def is_acceptable_password(password: str) -> bool:
    if len(password) <= 6:
        return False
    elif password !="this is password":
        return False
    else:
        return True

Number Length

def number_length(a: int)->int:
    b=str(a)
    c=len(b)
    return c

End Zeros

def end_zero(num:int )-> int:
    str1 =str(num)
    str1 = str1[::-1]
    count = 0
    for i in str1:
        if i =='0':
            count+=1
        else:
            break
    return count
def end_zero(num:int )-> int:
    s = 0
    if num == 0:
        return 1
    else:
        while num %10 == 0:
            s +=1
            num/=10
    return s

Backward String

def we(s: str )->str:
    b = ''
    for i in s:
        b = i+b
    """
        2 b=s[::-1]
        3 for i in range(1,len(a))
            b=b+a[-i]
        4 c=list(s)
          c.reverse()
          c=''.join(c)
        5 s=list(s)
          b=b+s.pop()
            
    """
    return b

字符串反写的多种方法!


Remove All Before

def remove_all_before(items:list,border:int):
    for i in range(0, len(items)):
        if items[i] == border:
            c = items[i:]
            break
        if items == [] or items[i] != border:
            return items
    return c

All Upper I

def is_all_upper(text: str) :
    a = text.replace(" ", "")
    if a.isupper() or a.isdigit() or a == '':
        return True
    else:
        return False

Replace First

def replace_first(ls:list)->Iterable:
    if len(ls) > 1:
        b = ls[1:]
        b.append(ls[0])
        return b
    else:
        return ls

Max Digit

def max_digit(number:int)->int:
    c=str(number)
    ls=[]
    for i in c:
        ls.append(int(i))
    ls.sort()
    s = ls[-1]
    return s
print(max_digit(0))

Split Pairs


def split_pairs(a):
    str1 = a[::2]
    str2 = a[1::2]+'_'
    ls = []
    for (n, m) in list(zip(str1,str2)):
        ls.append(n+m)
    return ls

zip():
将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象。
zip(*) :
可理解为解压,返回二维矩阵式


Beginning Zeros

def beginning_zeros(number: str) -> int:
    for i in range(len(number)):
        if number[0] != '0':
            c = 0
        if number[i] == '0':
            c = i+1
        else:
            break
    return c

Nearest Value

def nearest_value(ls:set,n:int)->int:
    b = list(ls)
    b.sort()
    s = b[0]
    for i in b:
        if i == n:
            s = i
        if abs(i - n) < abs(s - n) :
                s = i
    return s

Between Markers (simplified)

def between_markers(text: str, begin: str, end: str) -> str:
    s = 0
    for i in range(len(text)):
        if text[i] == begin :
            s = i+1
        if text[i] == end:
            return text[s:i]


Correct Sentence

def correct_sentence(text: str) -> str:
    up = text[0].capitalize()
    upper = up +text[1:]
    if upper.endswith('.') == False:
        return upper+'.'
    return upper

Is Even

def is_even(a:int):
    if a%2 == 0 :
        return True
    else:
        return False

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值