一、文件內容修改
用戶傳入修改的文件名,與要修改的內容,執行函數,完成修改操作
import os
def modify_file(file_name, old_content, new_content):
with open(file_name, mode='rt', encoding='utf-8') as read_f, \
open('%s.swap' % file_name, mode='wt', encoding='utf-8') as write_f:
for line in read_f:
if old_content in line:
line = line.replace(old_content, new_content)
write_f.write(line)
os.remove(file_name)
os.rename('%s.swap' % file_name, file_name)
modify_file('db.txt', '馬一特', '馬一特[Albert]')
二、計數
計算傳入字符串中【數字】、【字母】、【空格] 以及【其他】的個數
def calculate_count(data_str):
dict_count = {'alpha': 0, 'number': 0, 'space': 0, 'other': 0}
for i in data_str:
if i.isalpha():
dict_count['alpha'] += 1
elif i.isdigit():
dict_count['number'] += 1
elif i.isspace:
dict_count['space'] += 1
else:
dict_count['other'] += 1
return dict_count
res = calculate_count('32441adhjf ^&%$#@()*')
print(res)
三、獲取奇數位
獲取傳入列表或元組對象的所有奇數位索引對應 的元素,並將其作爲新列表返回
def get_odd_list(data):
odd_list = []
for i in data:
if data.index(i) % 2:
odd_list.append(i)
return odd_list
print(get_odd_list([1, 2, 3, 4, ]))
print(get_odd_list((13, 4322, 2333, 114,)))
print(get_odd_list(['a', 'b', 'c', 'd']))
四、字典值截取
檢查字典的每一個value的長度,如果大於2,那麼僅保留前兩個長度的內容,並將新內容返回給調用者。
dict1 = {"k1": "v1v1", "k2": [11, 22, 33, 44], 'k3': (9, 8, 7, 65, 4)}
def check_up_list(data_dict):
for key, value in data_dict.items():
if len(value) > 2:
data_dict[key] = value[:2]
return data_dict
res = check_up_list(dict1)
print(res)