1.寫函式,使用者傳入修改的檔名,與要修改的內容,執行函式,完成整個檔案的批量修改操作
import os
def modify_file(file_name, content, new_str):
new_filename = "%sfile_name" % "new."
new_file = open(new_filename,"a")
if os.path.exists(file_name):
with open(file_name, 'r') as f:
while true:
line = f.readline()
if not line:
break
elif content in line:
line = line.replace(content, new_str)
new_file.write(line)
new_file.close()
os.remove(file_name)
os.rename(new_filename,file_name)
else:
print("file not exists!")
modify_file("test.txt",'zxf','888') # 將test檔案內的zxf全部替換成888
2. 寫函式,檢查使用者傳入的物件(字串、列表、元組)的每乙個元素是否含有空內容。
def is_null(obj):
num = len(obj)
for i in range(0,num-1):
if obj[i] == " ":
print("所傳入的物件%s含有空內容" % obj)
break
else:
print("所傳入的物件%s不含空內容" % obj)
is_null('[1,2,4,5]')
3、寫函式,檢查傳入字典的每乙個value的長度,如果大於2,那麼僅保留前兩個長度的內容,並將新內容返回給呼叫者。
def two_len(obj):
for key in obj:
if len(obj[key]) >2:
obj[key] = obj[key][0:2]
return obj
dict_new = two_len()
print(dict_new)
4、寫函式,傳入n個數,返回字典
def max_min_dict(*args):
max_val = max(args)
min_val = min(args)
return
print(max_min_dict(22, 33, 2, 21, 3, 4, 77))
5、函式的可變引數(*args和**kwargs)
# *args 和 **kwargs
def fun_parm1(*args):
""" *args是把多個位置引數打包成元組 """
print(args)
print(type(args))
def fun_parm2(a,*args):
print(a)
print(args)
def fun_parm3(**kwargs):
"""**kwargs是把多個關鍵字引數打包成字典"""
print(kwargs)
print(type(kwargs))
fun_parm1(1, 2, 3, 4)
fun_parm2(1, 2, 3, 4)
fun_parm3(a=1, b=2, c=3)
python函式練習題
1 函式的定義 將可重複使用的,實現某種功能的 段組織在一起 2 函式的語法 def 函式名 引數 函式體 return 2.1 函式名是乙個變數,因此命名規則需遵守變數命名規則 3 函式的呼叫 函式名 4 函式的返回值 return 可空 none 單個 多個以tuple返回給呼叫者 5 函式的引...
python書中練習題 python練習題
1 定義乙個空列表,接收從鍵盤輸入的整數,把列表傳給乙個從大到小排序的函式,再輸出排序後的列表的值 listex b 0 a int input 請輸入列表長度 while b a num int input 請輸入字元 b 1 print listex sum 0 for i in range 0...
python的練習題 Python練習題
1 使用while迴圈輸入1 2 3 4 5 6 8 9 10 i 0while i 10 i i 1 if i 7 continue print i 結果 e python python python test.py1 2 求1 100的所有數的和 i 0sum 0 while i 100 i 1...