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