一、文件内容修改
用户传入修改的文件名,与要修改的内容,执行函数,完成修改操作
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)