題目一: 將示例**修改為能夠批量重新命名目標檔案、批量刪除檔案等。
批量重新命名:
import os
def rename(dir):
filelist = os.listdir(dir) #讀取檔案路徑
i=0for file in filelist:
filetype = os.path.splitext(file)[1] #將檔案的檔名和副檔名分離開返回副檔名
old = os.path.join(path,file) #原檔案位址
if (filetype == '.txt'):
i+=1
new = os.path.join(path,'note'+str(i)+filetype) #要更改的位址
os.rename(old,new)
path='d:/jupyter/test' #目標資料夾路徑
rename(path)
執行結果:
批量刪除:
import os
def rename(dir):
filelist = os.listdir(dir) #讀取檔案路徑
for file in filelist:
filetype = os.path.splitext(file)[1] #將檔案的檔名和副檔名分離開返回副檔名
if (filetype == '.txt'):
new = os.path.join(path,file) #要刪除的檔案的位址
os.remove(new)
path='d:/jupyter/test' #目標資料夾路徑
img1 = cv2.imread(path1,cv2.imread_grayscale) #以灰度模式讀取
img2 = img1[0:400,100:400] #擷取
img3 = cv2.flip(img1,1) #左右翻轉
img4 = cv2.resize(img1, (500, 500)) #縮放
img5 = np.hstack([img,img]) #在豎直方向上堆疊
cv2.imshow("test1",img1) #顯示
cv2.imshow("test2",img2)
cv2.imshow("test3",img3)
cv2.imshow("test4",img4)
cv2.imshow("test5",img5)
cv2.imwrite(path2,img1) #儲存
操作結果:
題目三: 畫乙隻豬。
import cv2
import numpy as np
img = 255*np.ones((600,600,3),np.uint8)
font = cv2.font_hershey_duplex
cv2.ellipse(img,(300,250),(75,65),180,0,360,(255,0,255),2) #畫臉
cv2.ellipse(img,(300,250),(75,65),180,90,165,(255,255,255),2)
cv2.line(img, (300,185), (443,160), (255,0,255),2) #畫鼻子
cv2.line(img, (372,238), (443,180), (255,0,255),2)
cv2.ellipse(img,(443,171),(15,10),350,0,360,(255,0,255),2) #畫鼻孔
cv2.circle(img,(438,173),3,(0,0,0),-1)
cv2.circle(img,(448,170),3,(0,0,0),-1)
cv2.circle(img,(270,224),8,(255,0,255),2,0) #畫眼睛
cv2.circle(img,(320,220),8,(255,0,255),2,0)
cv2.ellipse(img,(274,224),(4,2),90,0,360,(0,0,0),-1)
cv2.ellipse(img,(324,220),(4,2),90,0,360,(0,0,0),-1)
cv2.ellipse(img,(260,260),(10,8),90,0,360,(255,0,255),2) #畫臉頰
cv2.ellipse(img,(260,260),(9,7),90,0,360,(0,0,0),-1)
cv2.ellipse(img,(245,200),(18,10),70,60,270,(255,0,255),2) #畫耳朵
cv2.ellipse(img,(285,180),(16,9),75,70,290,(255,0,255),2)
cv2.ellipse(img,(305,275),(20,8),330,0,180,(255,0,255),2) #畫嘴巴
cv2.line(img, (260,310), (220,450), (255,0,255),2) #畫身體
cv2.line(img, (340,310), (380,450), (255,0,255),2)
cv2.ellipse(img,(300,450),(80,30),0,0,180,(255,0,255),2)
cv2.line(img, (254,325), (180,400), (255,0,255),2) #畫手
cv2.line(img, (346,325), (420,400), (255,0,255),2)
cv2.line(img, (210,370), (175,385), (255,0,255),2)
cv2.line(img, (210,370), (200,405), (255,0,255),2)
cv2.line(img, (390,370), (425,385), (255,0,255),2)
cv2.line(img, (390,370), (400,405), (255,0,255),2)
cv2.line(img, (260,475), (260,550), (255,0,255),2) #畫腳
cv2.line(img, (340,475), (340,550), (255,0,255),2)
cv2.ellipse(img,(270,564),(20,12),0,0,360,(255,0,255),2)
cv2.ellipse(img,(348,564),(20,12),0,0,360,(255,0,255),2)
cv2.imwrite('d:/jupyter/mywork/work/peiqi.jpg',img) #儲存
cv2.imshow("peiqi", img)
cv2.waitkey(0)
畫佩奇只用到了畫直線、畫橢圓和畫圓的函式。畫出的結果如下圖:
第二次作業
execise02 1.查詢85年以後出生的學生姓名 性別和出生日期 2.列表顯示所有可能的學生選課組合 學號 課程號 3.查詢1 2 4班中陳姓同學的資訊 4.查詢所有及格的學生姓名 所選課程名及所得分數 5.統計各門課程的及格人數 課程編號 課程名 及格人數 6.統計各門課程的總人數 及格人數和...
第二次作業
第一題 p1 1 遞迴寫法,效率低 include 1.寫乙個函式返回引數值為1的個數 比如 15 0000 1111 4個1 程式原型 int count one bits unsigned int value int fuc int x else return 0 void mainp1 p1 ...
第二次作業
檔名稱 516.cpp 作 者 闕文榮 完成日期 2016 年 3 月 11 日 版 本 號 v1.1 對任務及求解方法的描述部分 用while語句控制輸出 輸入描述 略 問題描述 現在北京有一套房子,200萬,假設房價每年 10 乙個軟體工程師每年固定能賺40萬。他想買這套房子,多大的 率能夠忍受...