1. 確定一個字符串中有多少個元音字母
def getCount(inputStr): return len([a for a in inputStr if a in "aeiou"])
2. 對字符串中的各個字符按照位置的不同進行重復輸出
def accum(test):
return "-".join([c.upper()+c.lower()*i for i,c in enumerate(test)])
3. 去除字符串中的元音字符
def disemvowel(string):
return string.translate(str.maketrans("","","aeiouAEIOU")) #maketrans第一個參數為要替換的字符,第二個參數為替換后的字符,第三個參數為要刪除的字符
4. 按格式輸出數列中的最大數和最小數
def high_and_low(numbers):
seq=[int(i) for i in numbers.split()]
return "{_max} {_min}".format(_max=max(seq),_min=min(seq))
5. 字符串中的每個單詞首字母大寫
import string
def toJadenCase(originString):
return string.capwords(originString
)
6. 鹼基對字符串的互補串
def DNA_strand(dna):
return dna.translate(dna.maketrans("ATCG","TAGC"))
7. 判斷一個字符串中的兩個字符的數目是否相等
def xo(s):
s=s.lower()
return s.count('x') == s.count('o')
8. 數字字符串的平方轉換
def square_digits(num):
return int("".join([int(i)**2 for i in num]))
9. 返回字符串中長度最短的單詞的長度
def find_short(s):
return min( [len(i) for i in s.split()] )
10. 兩數所表示的數值范圍和
def get_sum(a,b):
return a if a==b else sum(range(min(a,b),max(a,b)+1))
11. 判斷序列中的對象是否為字符串
def filter_list(l):
return [i for i in l if not isinstance(i, str)]
12. 判斷一個數字是否為整數
return i is_integer()
13. 判斷一個字符串是否滿足PIN碼的要求
def validate_pin(pin):
return len(pin) in (4, 6) and pin.isdigit()
14. 對字符串中的某些文字上色
print("已經添加{0}到你的購物車中,賬戶余額\033[41;1m{1}\033[0m".format(“macbook pro”,23400))
15. 二進制字符串轉換為十進制數
def binary_array_to_number(arr):
return int("".join([str(i) for i in arr]),2)
17. 找尋一個序列中出現奇數次的數字
from functools import reduce
import operator
def find_it(seq):
return reduce(operator.xor,seq)
18. 單詞書超過5的反寫
def spin_words(sentence):
return " ".join([i[::-1] if len(i)>=5 else i for i in sentence.split()])
19. 獲取一個9階2維矩陣(board)的所有3*3區域
region = [board[i][j:j+3]+board[i+1][j:j+3]+board[i+2][j:j+3] for i in range(0,9,3) for j in range(0,9,3)]
20. 二維矩陣board轉置
a=[]
for i in zip(*board)
a.append(list(i))