בירור | מיון קבצים מרובים לפי שמות
-
@אלף-שין כתב בבירור | מיון קבצים מרובים לפי שמות:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\Home\AppData\Local\Programs\Python\Python312\Lib\encodings\cp1255.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
UnicodeDecodeError: 'charmap' codec can't decode byte 0x9f in position 647: character maps to <undefined>השתמשת בקובץ האקסל שהבאתי במג'יק?
-
Traceback (most recent call last): File "<stdin>", line 1, in <module> File "C:\Users\user\AppData\Local\Programs\Python\Python312\Lib\encodings\cp1255.py", line 23, in decode return codecs.charmap_decode(input,self.errors,decoding_table)[0] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ UnicodeDecodeError: 'charmap' codec can't decode byte 0x9c in position 727: character maps to <undefined> >>>
-
@NH-LOCAL אולי יש לך פיתרון מכיוון אחר?
מצטט את השאלה המקורית@קוקר כתב בבירור | מיון קבצים מרובים לפי שמות:
יש לי תיקייה עם 300 קבצים
אני רוצה להוציא אותם מהתיקייה הנוכחית (או לחלק אותם לתתי תיקיות באותה תיקיה)
ולחלק אותם ל3 תיקיות לפי נושאים.
בקובץ אקסל יש לי עמודה אחת עם שמות כל הקבצים כפי שהם מופיעית בתיקייה הנוכחית
בעמודה ליד מופיע לאיזה תיקייה זה אמור להיות.
אני יכול לסנן את הקבצים שאמורים להגיע לתיקייה מס' 1
להעתיק את כל שמות הקבצים ולהדביק אותם באיזה שורת קוד שתוציא אותם מהתיקייה הנוכחית ולהעביר לתיקיה מס' 1.
וכן הלאה לשאר הקבצים. -
@קוקר נסה את הקוד המצורף.
תכניס כמובן את הנתיבים המתאימים
זה קוד שאמור להיות מאוד פשוט, והוא נבנה באמצעות gpt4oimport os import shutil import csv # נתיב לקובץ ה-CSV csv_file_path = 'path_to_your_file.csv' # נתיב לתיקייה הנוכחית שבה נמצאים הקבצים current_folder_path = 'path_to_your_current_folder' # פתיחת קובץ ה-CSV וקריאת התוכן with open(csv_file_path, newline='', encoding='utf-8') as csvfile: reader = csv.reader(csvfile) next(reader) # דילוג על כותרות העמודות אם קיימות for row in reader: file_name, target_folder = row source_path = os.path.join(current_folder_path, file_name) target_folder_path = os.path.join(current_folder_path, target_folder) target_path = os.path.join(target_folder_path, file_name) # יצירת התיקייה אם לא קיימת if not os.path.exists(target_folder_path): os.makedirs(target_folder_path) # העברת הקובץ if os.path.exists(source_path): shutil.move(source_path, target_path) else: print(f"File {file_name} does not exist in the source directory.") print("Files have been successfully moved to their respective folders.")
-
Traceback (most recent call last): File "<stdin>", line 1, in <module> File "C:\Users\Home\AppData\Local\Programs\Python\Python312\Lib\encodings\cp1255.py", line 23, in decode return codecs.charmap_decode(input,self.errors,decoding_table)[0] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ UnicodeDecodeError: 'charmap' codec can't decode byte 0x9c in position 53: character maps to <undefined> >>>