לומדים פייתון? להלן כיצד להעתיק קובץ

לומדים פייתון? להלן כיצד להעתיק קובץ

האם אתה רוצה לשפר את מיומנות ה- Python שלך? לאחר מכן תוכל לנסות לבצע כמה משימות במחשב שלך באמצעות Python. העתקה והדבקה של קבצים מספרייה אחת לאחרת באמצעות פייתון היא דרך מהנה לעשות זאת.





בנוסף להיותו כיף, הוא מאפשר לך לקרוא ולכתוב קבצים במהירות מבלי להסיח את דעתך מהקוד שלך. אם אתה חדש ב- Python, זוהי מיומנות שאולי עדיין תצטרך להרים בדרך זו או אחרת. אז בואו לגלות כיצד להעתיק קבצים באמצעות Python דרך הפוסט הזה.





דרישות להעתיק קבצים באמצעות פייתון

ישנן דרכים רבות להעתיק ולהדביק קבצים באמצעות Python. לכן, הדרישה לביצוע זה משתנה ותלויה בשיטה שבה תחליטו להשתמש.





למרות שאתה לא צריך מודולים נוספים כדי להעתיק קבצים עם Python, אתה עדיין יכול להשתמש בספריות מובנות אם אתה רוצה.

לדוגמה, אם אתה רוצה להשתמש ב- אתה בשיטה, עליך לייבא אותה לקוד שלך. עם זאת, אחת הדרכים הפופולריות להעתיק קבצים באמצעות Python היא שימוש ב- שוטיל סִפְרִיָה.



בואו נראה כיצד נוכל להשתמש בשיטות שונות אלה להעתיק קבצים באמצעות פייתון.

כיצד להעתיק קבצים באמצעות ספריית Shutil המובנית של פייתון

ה שוטיל מודול היא ספריית Python מובנית ורבת עוצמה לקריאה וכתיבה של קבצים במהירות ב- Python.





כדי להשתמש בו, עליך לספק רק את הנתיב המלא של קובצי המקור והיעד.

האם אתה יכול להוסיף ram ל- macbook pro

בעצם, שוטיל לוקח פורמט זה:





shutil.copy([source directory path], [destination directory path], follow_symlinks=True)

לדוגמה, הקוד שלהלן משתמש shutil.copy () להעתיק קובץ בשם copy.txt מתיקיה בשם התיקייה שלי לתוך אחד אחר בשם יַעַד . לאחר מכן הוא משנה את שם קובץ היעד כ- newFile.txt :

import shutil
sourceFile = 'C:/Users/some_directories/my_folder/copy.txt'
destinationFile = 'C:/Users/some_directories/destination/newFile.txt'
shutil.copy(sourceFile, destinationFile, follow_symlinks=True)

שים לב שאתה יכול לכתוב את הקוד שלך בכל עורך קוד שתבחר. לאחר מכן תוכל להריץ אותו באמצעות שורת הפקודה.

עם זאת, תוכל גם להשתמש בסביבת הפיתוח המשולבת של Python Integrated (IDLE) אם אינך מכיר את הפעלת Python באמצעות שורת הפקודה.

קָשׁוּר: פקודות שורת הפקודה (CMD) שאתה חייב לדעת

ה shutil.copy שיטה אינה מעתיקה את המטא נתונים של קובץ המקור. בעיקרו של דבר, המכונה שלך רואה את קובץ היעד כקובץ חדש לחלוטין ונותנת לו מטא נתונים חדשים.

עם זאת, כדי להעתיק את המטא נתונים יחד עם הקובץ המקורי, השתמש ב shutil.copy2 שיטה:

import shutil
shutil.copy2(sourceFile, destinationFile, follow_symlinks=True)

השיטה לעיל משמרת את המטא נתונים המקוריים של הקובץ הישן בקובץ היעד. לדוגמה, קובץ היעד שומר את התאריך שבו יצרת את קובץ המקור, גודלו ותכונות אחרות.

ה follow_symlinks טיעון הוא הצהרת קישור סמלי המאפשר שוטיל ללכת בדרך מוחלטת. לכן עליך לכלול אותו אם קובצי המקור והיעד נמצאים בספריות שונות.

אך אם שני הקבצים נמצאים בספריית העבודה הנוכחית שלך, אינך צריך לכלול א follow_symlinks . אם כן, Python מעלה חריג תחביר.

כיצד לתקן חיבור אינטרנט לא יציב

לכן, אם אתה מדביק את קובץ המקור בספריית העבודה הנוכחית שלך, הקוד שלך אמור להיראות כך:

import shutil
shutil.copy2(sourceFile, destinationFile)

בנוסף לשימוש בשיטות השוטיל לעיל, אתה יכול גם להשתמש shutil.copyfile אוֹ shutil.copyfileobj .

שימוש shutil.copyfileobj הוא קצת שונה מכיוון שהוא דורש את המובנה לִפְתוֹחַ פוּנקצִיָה. לאחר מכן, עליך לקרוא ולכתוב בינארי על ידי הכללת ה- 'rb' ו 'wb' טיעונים.

בוא נראה איך shutil.copyfileobj שיטה עובדת באמצעות אותם ספריות שהשתמשנו בהן בעבר:

import shutil
sourceFilePath = open('C:/Users/some_directories/my_folder/copy.txt', 'rb')
destinationFilePath = open('C:/Users/some_directories/destination/newFile.txt', 'wb')
shutil.copyfileobj(sourceFilePath, destinationFilePath)

ציין זאת shutil.copyfileobj () אינו דורש את follow_symlinks טַעֲנָה.

למרות זאת, shutil.copyfile () עובד די באותו אופן .עותק ו .copy2 עושה. הם נבדלים רק בצורה לא מבוטלת בתפקודיהם הפנימיים.

כדי להשתמש ב shutil.copyfile () שיטה:

import shutil
sourceFilePath = 'C:/Users/some_directories/my_folder/copy.txt'
destinationFilePath = 'C:/Users/some_directories/destination/newFile.txt'
shutil.copyfile(sourceFilePath, destinationFilePath)

כיצד להעתיק קבצים באמצעות מודול מערכת ההפעלה

ה אתה המודול משתמש בשתי שיטות מובנות להעתקת קבצים; os.system () ו os.popen () שיטות.

ה os.system () שיטה מאפשרת לך לחקות את סביבת שורת הפקודה.

עם זאת, חסרון בשיטות ההפעלה הוא שהם מעתיקים קבצים רק בספריית העבודה הנוכחית שלך.

כדי להשתמש ב os.system () שיטה ב- Windows:

import os
os.system('copy source.txt destination.txt)

אתה יכול גם להשתמש במובנה xcopy פקודת מסוף Windows:

import os
os.system('xcopy source.txt destination.txt)

כדי להשתמש ב מערכת מערכת ההפעלה שיטה ב- Linux, החלף עותק עם cp :

import os
os.system('cp source.txt destination.txt)

כיצד להעתיק קבצים בשיטת os.popen

כדי להשתמש בשיטה זו, החלף os.system () עם os.popen () .

ב- Windows, השתמש ב:

import os
os.popen('copy source.txt destination.txt)

כפי שעשינו עם os.system () , החלף עותק עם cp כדי להשתמש בשיטה זו ב- Linux:

import os
os.popen('cp source.txt destination.txt)

כיצד להעתיק קבצים באמצעות מודול תהליכי המשנה של פייתון

בנוסף לשיטות לעיל, אתה יכול גם להשתמש ב- תת -תהליך () ספרייה להעתיק קבצים ב- Python:

import subprocess as sp
sp.call('copy sourceFile destinationFile', shell=True)

עם זאת, ב- Linux, השתמש ב:

import subprocess as sp
sp.call('cp sourceFile destinationFile', shell=True)

ה תת -תהליך גם הספרייה משתמשת subprocess.check_out () שיטה. זה עובד באותה צורה subprocess.call () עושה:

import subprocess as sp
sp.check_out('copy sourceFile destinationFile', shell=True)

ב- Linux, החלף עותק עם cp :

import subprocess as sp
sp.check_out('cp sourceFile destinationFIle', shell=True)

עם זאת, בדומה לשיטות ההפעלה, שיטות תהליכי משנה פועלות רק עם קבצים בספריית העבודה הנוכחית שלך.

הערה: תוכל גם להעתיק קבצים לתיקייה אם היא נמצאת באותה ספריית עבודה של קובץ המקור. כל שעליך לעשות הוא להחליף את שם קובץ היעד בשם תיקיית היעד. עם זאת, ודא שתיקיית היעד וקובץ המקור נמצאים בספריית העבודה הנוכחית שלך.

כיצד להעתיק קבצים בפייתון מבלי להשתמש בספריות

אתה יכול גם להעתיק קבצים ב- Python מבלי תלוי בספרייה כלשהי. בדומה לשיטת Shutil, אתה צריך רק את הנתיבים המלאים של ספריות המקור והיעד.

כיצד לבצע פינג של אתר ברציפות

כך תוכל להשיג זאת:

sourcePath = 'C:/Users/source_directories/my_folder/copy.txt'
destinationPath = 'C:/Users/some_directories/destination_directories/newFile.txt'
with open(sourcePath, 'rb') as read:
with open(destinationPath, 'wb') as myfile:
myfile.write(read.read())

כדי להפוך את הקוד לשימוש חוזר, תוכל לשנות אותו לפונקציה:

def copyFile(source=None, destination=None):
if not (source and destination)==None:
with open(source, 'rb') as read:
with open(destination, 'wb') as myfile:
myfile.write(read.read())
else:
print('Please enter the source and destination paths')
copyFile(sourcePath, destinationPath)

זהו זה. הרגע יצרת מכונת צילום לשימוש חוזר עם Python מבלי להשתמש בספרייה כלשהי.

המשך להפוך את המשימות לאוטומטיות באמצעות Python

בנוסף לסייע לך להישאר ממוקד בקוד שלך בעת בניית פרויקטים, העתקת קבצים באמצעות Python מאפשרת לך להבין טוב יותר את ניהול הקבצים באמצעות Python. עם זאת, משחק עם משימות Python הוא דרך לשפר את מיומנות ה- Python שלך, במיוחד אם אתה מתחיל.

לדוגמה, אתה יכול לשנות את התאריך והשעה במחשב באמצעות מודול מערכת ההפעלה. אתה יכול אפילו לכתוב פקודות bash מותאמות אישית עם Python אם תרצה.

לַחֲלוֹק לַחֲלוֹק צִיוּץ אימייל כיצד ליצור תוכניות שורת פקודה משלך בפייתון בלחיצה

רוצה ליצור תוכניות שורת פקודה משלך Python אבל קשה לך מדי? השתמש בקליק, כלי Python שימושי כדי לייעל את הקוד שלך.

קרא הבא
נושאים קשורים
  • תִכנוּת
  • פִּיתוֹן
על הסופר אידיסו אומיסולה(פורסמו 94 מאמרים)

Idowu נלהב מכל דבר חכם וטכנולוגי. בזמנו הפנוי הוא משתעשע בקידוד ועובר ללוח השחמט כשהוא משועמם, אבל הוא גם אוהב להיפרד מדי פעם מהשגרה. התשוקה שלו להראות לאנשים את הדרך לטכנולוגיה המודרנית מניעה אותו לכתוב יותר.

עוד מאת Idowu Omisola

הירשם לניוזלטר שלנו

הצטרף לניוזלטר שלנו לקבלת טיפים, סקירות, ספרים אלקטרוניים בחינם ומבצעים בלעדיים!

לחצו כאן להרשמה