[파이썬] 디렉토리에서 같은 단어가 포함된 파일이름을 가진 jpg파일을 모두 삭제 할려고 합니다. 조금만 도와주세요

조회수 1267회
import sqlite3
import os
import shutil

conn = sqlite3.connect('database.db')
c = conn.cursor()

uname = input("Enter your name: ")

c.execute("DELETE FROM users WHERE id=(?)",(uname,)) 
if os.path.exists("./dataset"):
    os.remove("./dataset/"+uname+".*"+".*"+".jpg")
else:
    print("not exists, please check your id")

이부분에서 헷갈리는데 현재 dataset 폴더에 kkk.1.1.jpg kkk.1.2.jpg ..... kkk.2.49.jpg kkk.2.50.jpg

파일 이름이 이런 형식입니다. 그래서 kkk 라는 이미지파일을 모두 삭제하고 싶은데

바로 위 코드 부분에서 막힙니다. 이부분만 코치 부탁드릴께요

conn.commit()
conn.close()
Enter your name: kkk
---------------------------------------------------------------------------
FileNotFoundError                         Traceback (most recent call last)
<ipython-input-15-e43c10ee2457> in <module>()
     18 
     19 if os.path.exists("./dataset"):
---> 20     os.remove("./dataset/"+uname+ ".* "+" .* "+".jpg")
     21 else:
     22     print("not exists, please check your id")

FileNotFoundError: [Errno 2] 그런 파일이나 디렉터리가 없습니다: './dataset/kkk. * . * .jpg'

현재 이렇게 에러가 뜹니다.

1 답변

  • system() 함수를 사용하면 shell 에서 rm 명령어로 파일 삭제 하듯이 사용 가능 합니다.

    //여기에 코드를 입력하세요
    import os
    
    os.system('rm ' + './dataset/' + uname + '*' + '.jpg')
    
    • (•́ ✖ •̀)
      알 수 없는 사용자
    • 일일히 카운터값 id값 리스트로 불러와서 반복문 돌려서 기능은 구현했는데 이 코드가 훨씬 깔끔하네요!! 감사합니다 ㅇ.ㅇb 알 수 없는 사용자 2019.9.19 15:36

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)