ดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

การเขียน Code ให้ Extract ไฟล์ zip ด้วยภาษา Python

สวัสดีครับกลับมาพบกันอีกแล้ว หลังจากที่บทความก่อนว่าด้วยเรื่อง การเขียน Code ให้ zip ไฟล์ด้วยภาษา Python ไปวันนี้เราจะมาต่อกันด้วยการ Extract ไฟล์ Zip หรือการแตกไฟล์ zip ด้วยภาษา Python โดยหลักๆ วิธีการคือเราก็ยังคงต้อง Import Library zipfile เพื่อที่จะใช้ method ย่อย ของตัว zipfile อยู่ โดยวิธีการเขียนจะมีดังนี้

 

1.ขั้นแรกที่สำคัญเลยคือการ import zipfile เข้ามา

import zipfile as z

 

2.ทำการสร้างฟังชั่นขึ้นมาเพื่อที่วันหลังจะได้ทำการเรียกใช้

def ex_file(name_file_zip):
    with z.ZipFile(name_file_zip,'r') as zf:
        zf.printdir()

โดยรอบนี้โหมดของตัว zipfile จะเป็น r คือการอ่านข้อมูลที่ิอยู่ภายใน ไฟล์ zip นั่นเอง และทำการแสดงผลข้อมูลของ ไฟล์ที่อยู่ภายใน ไฟล์ zip ทั้งหมด ด้วยคำสั่ง printdir

ผลลัพธ์

 

แสดงผลข้อมูลของคำสั่ง printdir
ผลลัพธ์ของการใช้คำสั่ง printdir

3.เขียนคำสั่งเพื่อทำการแตกไฟล์ทั้งหมดที่อยู่ภายใน ไฟล์ zip โดยใช้คำสั่ง extractall

        print("Extracting all the flies now...")
        zf.extractall()
        print("done!!")

4.ทำการเรียกผ่าน main อีกครั้งโดยการใส่ชื่อ file zip ที่ต้องการจะ Extract ออกมา

if __name__ == '__main__':
    ex_file("Python.zip")

full code

import os
import zipfile as z


#   แตกไฟล์มาวางไว้ที่เดียวกับโปรเจค
def ex_file(name_file_zip):
    with z.ZipFile(name_file_zip,'r') as zf:
        zf.printdir()

        print("Extracting all the flies now...")
        zf.extractall()
        print("done!!")

if __name__ == '__main__':
    ex_file("Python.zip")

ผลลัพธ์ที่ได้

แสดงผลลัพธ์ของการรันโปรแกรม extract file zip
ผลลัพธ์ของการ run extract zip file

อ้างอิง

Unzipping files in Python.[ออนไลน์].เข้าถึงจาก : https://stackoverflow.com/questions/3451111/unzipping-files-in-python.[11-Jan-2020]

zipfile — Work with ZIP archives.[ออนไลน์].เข้าถึงจาก : https://docs.python.org/3/library/zipfile.html.[11-Jan-2020]

Compressing and Extracting Files in Python.[ออนไลน์].เข้าถึงจาก : https://code.tutsplus.com/tutorials/compressing-and-extracting-files-in-python--cms-26816.[11-Jan-2020]

 

ช่องทางการศึกษาเพิ่มเติมข่าวที่น่าสนใจเกี่ยวกับ : คำสั่งในการทำงานของโมดูล Turtle ส่วนที่ 3 การควบคุมหน้าต่าง

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
วิธีการนำข้อความที่ผู้ใช้กรอกให้เข้าไปอยู่ในไฟล์ pdf ด้วยภาษา php
โดย jamepiyawat พ 29 ม.ค. 2020 6:53 pm บอร์ด PHP Knowledge
0
7
พ 29 ม.ค. 2020 6:53 pm โดย jamepiyawat
ติดตั้ง module flaskwebgui ไม่ได้ครับ
โดย benzas00123 พ 29 ม.ค. 2020 6:53 pm บอร์ด Programming - C/C++ & java & Python
0
5
พ 29 ม.ค. 2020 6:53 pm โดย benzas00123
ความรู้พื้นฐานเกี่ยวกับบัญชีแยกประเภท
โดย nutchasn พ 29 ม.ค. 2020 6:32 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
2
พ 29 ม.ค. 2020 6:32 pm โดย nutchasn
Pillow library ฟังก์ชั่น Image.new() ฟังก์ชั่นที่ใช้สำหรับการสร้างไฟล์รูปภาพ
โดย benzas00123 พ 29 ม.ค. 2020 6:21 pm บอร์ด Python Knowledge
0
4
พ 29 ม.ค. 2020 6:21 pm โดย benzas00123
ความรู้พื้นฐานเกี่ยวกับงบทดลอง (Taial Balance)
โดย nutchasn พ 29 ม.ค. 2020 6:00 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
8
พ 29 ม.ค. 2020 6:00 pm โดย nutchasn
Pillow library ฟังก์ชั่น ImageDraw() ฟังก์ชั่นสำหรับการเพิ่มตัวอักษรเข้าไปในภาพ
โดย benzas00123 พ 29 ม.ค. 2020 5:52 pm บอร์ด Python Knowledge
0
11
พ 29 ม.ค. 2020 5:52 pm โดย benzas00123
การปรับปรุงค่าใช้จ่ายจ่ายล่วงหน้า (Prepaid expenses)
โดย nutchasn พ 29 ม.ค. 2020 5:29 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
3
พ 29 ม.ค. 2020 5:29 pm โดย nutchasn
วิธีการเขียน php สำหรับตรวจสอบหมายเลขบัตรประชาชนว่ามีความถูกต้องหรือไม่
โดย Ittichai_chupol พ 29 ม.ค. 2020 5:24 pm บอร์ด PHP Knowledge
0
8
พ 29 ม.ค. 2020 5:24 pm โดย Ittichai_chupol
ทำความรู้จักกับชนิดข้อมูลใน SQL
โดย nutchasn พ 29 ม.ค. 2020 4:38 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
8
พ 29 ม.ค. 2020 4:38 pm โดย nutchasn
วิธีการปรับปรุงรายได้รับล่วงหน้า (Deferred Income)
โดย nutchasn พ 29 ม.ค. 2020 3:38 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
8
พ 29 ม.ค. 2020 3:38 pm โดย nutchasn
ผมไม่สามารถใช้ module tkinter ได้ครับ
โดย benzas00123 พ 29 ม.ค. 2020 2:04 pm บอร์ด Programming - C/C++ & java & Python
9
40
พ 29 ม.ค. 2020 6:57 pm โดย benzas00123
การปรับปรุงรายได้ค้างรับ (Accrued Revenue)
โดย nutchasn พ 29 ม.ค. 2020 2:09 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
9
พ 29 ม.ค. 2020 2:09 pm โดย nutchasn
ปิด textbox เพื่อให้ไม่สามารถแก้ไขข้อมูลได้ด้วย radio button
โดย benzas00123 พ 29 ม.ค. 2020 11:31 am บอร์ด HTML CSS
0
10
พ 29 ม.ค. 2020 11:31 am โดย benzas00123
อยากทราบวิธีการ insert ข้อมูลในตอนติดตั้ง Extension ของ phpbb
โดย Ittichai_chupol พ 29 ม.ค. 2020 11:03 am บอร์ด Programming - PHP
1
11
พ 29 ม.ค. 2020 11:08 am โดย thatsawan
เจอของจริง
โดย noppadonsk พ 29 ม.ค. 2020 10:58 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
8
พ 29 ม.ค. 2020 10:58 am โดย noppadonsk
อยากทราบวิธีแยกข้อมูลที่เรียงกันอย่างไม่เป็นระเบียบเข้า DB
โดย meetingyou999 อ 28 ม.ค. 2020 10:37 pm บอร์ด Programming - PHP
0
14
อ 28 ม.ค. 2020 10:37 pm โดย meetingyou999
Pillow library ฟังก์ชั่น Filters สำหรับการปรับ Filters ของภาพให้มีลูกเล่นมากขึ้น
โดย benzas00123 อ 28 ม.ค. 2020 6:52 pm บอร์ด Python Knowledge
0
26
อ 28 ม.ค. 2020 6:52 pm โดย benzas00123
เรียนรู้การใช้สูตรจาก Excel
โดย nutchasn อ 28 ม.ค. 2020 6:51 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
14
อ 28 ม.ค. 2020 6:51 pm โดย nutchasn
Pillow library ฟังก์ชั่น convert ฟังก์ชั่นสำหรับเปลี่ยนโหมดสีของภาพ
โดย benzas00123 อ 28 ม.ค. 2020 6:40 pm บอร์ด Python Knowledge
0
13
อ 28 ม.ค. 2020 6:40 pm โดย benzas00123
ทำความรู้จักโปรแกรม power bi ในการวิเคราะห์ข้อมูล
โดย nutchasn อ 28 ม.ค. 2020 4:30 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
10
อ 28 ม.ค. 2020 4:30 pm โดย nutchasn