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

การเขียน 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 การควบคุมหน้าต่าง

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
10 สุดยอดสตรีทฟู้ดในแอฟริกาตะวันตก
โดย Anonymous อ 24 พฤษภาคม 2020 9:58 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
5
อ 24 พฤษภาคม 2020 9:58 pm โดย บุคคลทั่วไป
ข้อมูลสำหรับทำระบบ
โดย mindphp อ 24 พฤษภาคม 2020 4:07 am บอร์ด มารียา ซีฟู้ดส์ (Main)
0
3
อ 24 พฤษภาคม 2020 4:07 am โดย mindphp
อัพเดดความคืบหน้า / Progress - มารียา ซีฟู้ดส์
โดย mindphp อ 24 พฤษภาคม 2020 4:07 am บอร์ด มารียา ซีฟู้ดส์ (Main)
0
3
อ 24 พฤษภาคม 2020 4:07 am โดย mindphp
อัพเดด Template เว็บไซต์ FDD (V2)
โดย mindphp อ 24 พฤษภาคม 2020 3:51 am บอร์ด FDD (Main)
0
1
อ 24 พฤษภาคม 2020 3:51 am โดย mindphp
R - ปรับกราฟฟิก ของเว็บ FDD
โดย mindphp อ 24 พฤษภาคม 2020 3:50 am บอร์ด FDD (Main)
0
2
อ 24 พฤษภาคม 2020 3:50 am โดย mindphp
ความคืบหน้า / Progress
โดย mindphp อ 24 พฤษภาคม 2020 3:46 am บอร์ด FDD (Main)
0
1
อ 24 พฤษภาคม 2020 3:46 am โดย mindphp
VDO - SP Page builder
โดย numtan5839 ศ 22 พฤษภาคม 2020 6:27 pm บอร์ด SP Page Builder Thai Edition - Manual & VDO & เทคนิคการใช้งาน
1
7
ศ 22 พฤษภาคม 2020 7:00 pm โดย mindphp
วิธีการใช้ Google Tasks แอพจัดการบันทึกสิ่งที่ต้องทำ
โดย sirirat ศ 22 พฤษภาคม 2020 11:04 am บอร์ด Share Knowledge
0
35
ศ 22 พฤษภาคม 2020 11:04 am โดย sirirat
งานประจำวันที่ 22 พฤษภาคม 2563
โดย sirirat ศ 22 พฤษภาคม 2020 10:10 am บอร์ด M102 - ศิริรัตน์ ทิพย์น้อย
1
15
ศ 22 พฤษภาคม 2020 11:22 am โดย numtan5839
สรุปการเรียนรู้ประจำวัน 21/05/63
โดย sirirat ศ 22 พฤษภาคม 2020 10:08 am บอร์ด M102 - ศิริรัตน์ ทิพย์น้อย
0
2
ศ 22 พฤษภาคม 2020 10:08 am โดย sirirat
รายงานความคืบหน้า / Process
โดย mindphp ศ 22 พฤษภาคม 2020 1:07 am บอร์ด SP Page Builder Thai Edition (Main)
1
3
ศ 22 พฤษภาคม 2020 1:34 am โดย mindphp
ส่ง site map ให้ google แต่ไม่โชว์ในเมนูบนเว็บเรา จะมีผลอะไรกับเว็บไหมครับ
โดย toonytoony2004 พฤ 21 พฤษภาคม 2020 10:17 pm บอร์ด Joomla Development
6
64
ส 23 พฤษภาคม 2020 10:56 pm โดย toonytoony2004
B - เวลาของบอร์ดไม่ตรงเวลาไทย
โดย thatsawan พฤ 21 พฤษภาคม 2020 5:19 pm บอร์ด Odoojob.com - Tester
0
1
พฤ 21 พฤษภาคม 2020 5:19 pm โดย thatsawan
B - ข้อความแนะนำตัว ของผู้สมัครไม่แสดงใน บริษัทที่เปิดรับ
โดย thatsawan พฤ 21 พฤษภาคม 2020 5:18 pm บอร์ด Odoojob.com - Tester
0
1
พฤ 21 พฤษภาคม 2020 5:18 pm โดย thatsawan
R - [email Formart-หาคน] เเจ้งเมื่อมีคนสมัครงานใน Odoojob
โดย thatsawan พฤ 21 พฤษภาคม 2020 5:12 pm บอร์ด Odoojob.com - Manual & Content
0
1
พฤ 21 พฤษภาคม 2020 5:12 pm โดย thatsawan
B - บริษัทหาคน ต้องการเปลี่ยน Email รับสมัครงานหาทางเข้าไม่เจอ
โดย thatsawan พฤ 21 พฤษภาคม 2020 5:07 pm บอร์ด Odoojob.com - Tester
0
1
พฤ 21 พฤษภาคม 2020 5:07 pm โดย thatsawan
R - [email Formart-หางาน] หลังสมัครงาน บน Odoojob
โดย thatsawan พฤ 21 พฤษภาคม 2020 4:57 pm บอร์ด Odoojob.com - Manual & Content
0
5
พฤ 21 พฤษภาคม 2020 4:57 pm โดย thatsawan
ทำไมสมัครสมาชิกแล้วเข้าสู่ระบบไม่ได้??
โดย sirirat พฤ 21 พฤษภาคม 2020 4:56 pm บอร์ด MindPHP News & Feedback
0
35
พฤ 21 พฤษภาคม 2020 4:56 pm โดย sirirat
B - ข้อมูลผู้สมัครที่กรอกใน mdsoft ไม่ติดมาด้วย
โดย thatsawan พฤ 21 พฤษภาคม 2020 4:51 pm บอร์ด Odoojob.com - Tester
0
1
พฤ 21 พฤษภาคม 2020 4:51 pm โดย thatsawan
B - คลิกเมนูแผงควบคุมเเล้ว เข้าไม่ได้ เด้งกลับมา index
โดย thatsawan พฤ 21 พฤษภาคม 2020 4:47 pm บอร์ด Odoojob.com - Tester
0
1
พฤ 21 พฤษภาคม 2020 4:47 pm โดย thatsawan