Как переименовать файл с помощью Python

Я хочу изменить a.txt на b.kml .


Используйте os.rename :

  импортировать osos.rename ('a.txt', 'b.kml')  

Файл может находиться внутри каталога, в этом случае укажите путь:

   import osold_file = os.path.join ("каталог", "a.txt") new_file = os.path.join ("каталог", "b.kml") os.rename (old_file, new_file)   


Файл может находиться внутри каталога, в этом случае укажите путь:

  import osold_file = os.path.join ("каталог", "a.txt") new_file = os.path.join ("каталог", "b.kml") os  .rename (старый_файл, новый_файл)  

  import shutilshutil.move (  'a.txt', 'b.kml')  

Это сработает для переименования или перемещения файла.


  import shutilshutil.move ('a.txt', 'b.kml')  

Это будет работать для переименования или перемещения файла.


Начиная с Python 3.4, для решения этой проблемы можно использовать модуль pathlib.

Если у вас более старая версия, вы можете использовать версию с обратным переносом, найденную здесь

Предположим, вы не находитесь в корневом пути (просто для того, чтобы немного усложнить его), который хотите переименовать, и должны указать полный путь, мы можем посмотреть на это:

  some_path = 'a/b/c/the_file.extension'  

Итак, вы можете выбрать свой путь и создать Path объект вне его:

  from pathlib import Pathp = Path (some_path)  

Просто чтобы предоставить некоторую информацию об этом объекте, мы есть сейчас, мы можем извлечь из него кое-что. Например, если по какой-либо причине мы хотим переименовать файл, изменив имя файла с the_file на the_file_1 , то мы можем получить часть имени файла:

  name_without_extension = p.stem  

И все еще держите расширение в руке:

  ext = p.suffix  

Мы можем выполнить нашу модификацию с помощью простой обработки строк:

Python 3.6 и выше использует f -strings!

  new_file_name = f "{name_without_extension} _1"  

В противном случае:

   new_file_name = "{} _ {}". format (name_without_extension, 1)  

И теперь мы можем выполнить наше переименование, вызвав rename к созданному нами объекту пути и добавляем ext для завершения нужной структуры переименования:

  p.rename  (Путь (p.parent, new_file_name + ext))  

Короче, чтобы продемонстрировать его простоту:

Python 3. 6+:

  from pathlib import Pathp = Path (some_path) p.rename (Path (p.parent, f "{p.stem} _1_ {p.suffix}"  ))  

Версии ниже Python 3.6 вместо этого используют метод строкового формата:

  from pathlib import Pathp = Path (some_path)  p.rename (Путь (p.parent, "{} _ {} _ {}". format (p.stem, 1, p.suffix))  


Начиная с Python 3.4, для решения этой проблемы можно использовать модуль pathlib.

Если вы используете более старую версию , вы можете использовать версию с обратным переносом, найденную здесь

Предположим, вы не находитесь в корневом пути (просто чтобы добавить к нему сложности), который хотите переименовать, и должны предоставить полный путь , мы можем посмотреть на это:

  some_path = 'a/b/c/the_file.extension'  

Итак, вы может взять ваш путь и создать из него объект Path :

  из pathlib import Pathp = Path (some_path) de> 

Чтобы предоставить некоторую информацию об этом объекте, который у нас есть, мы можем извлечь из него что-то. Например, если по какой-либо причине мы хотим переименовать файл, изменив имя файла с the_file на the_file_1 , то мы можем получить часть имени файла:

  name_without_extension = p.stem  

И все еще держите расширение в руке:

  ext = p.suffix  

Мы можем выполнить нашу модификацию с помощью простой обработки строк:

Python 3.6 и выше использует f -strings!

  new_file_name = f "{name_without_extension} _1"  

В противном случае:

   new_file_name = "{} _ {}". format (name_without_extension, 1)  

И теперь мы можем выполнить наше переименование, вызвав rename к созданному нами объекту пути и добавляем ext для завершения нужной структуры переименования:

  p.rename  (Путь (p.parent, new_file_name + ext))  

Короче, чтобы продемонстрировать его простоту:

Python 3.6+:

  from pathlib import Pathp = Path (some_path) p.rename (Path (p.parent, f "{p.stem} _1_ {p.suffix}"))  

Версии ниже Python 3.6 используют вместо этого метод формата строки:

  from pathlib import Pathp = Path (some_path) p.rename (Path (p.parent, "  {} _ {} _ {} ". format (p.stem, 1, p.suffix))  

os.rename (old, new)

Это находится в документации Python: http://docs.python.org/ библиотека/os.html


os.rename (старый, новый)

Это можно найти в документации Python: http://docs.python.org/library/os.html


Используйте os.rename . Но вы должны передать функции полный путь к обоим файлам. Если у меня есть файл a.txt на моем рабочем столе, я сделаю это, а также я должен предоставить полный переименованный файл.

   os.rename ('C: \ Users \ Desktop \ a.txt', 'C: \ Users \ Desktop \ b.kml')  


Используйте os.rename . Но вы должны передать функции полный путь к обоим файлам. Если у меня есть файл a.txt на моем рабочем столе, я сделаю это, а также я должен предоставить полный переименованный файл.

   os.rename ('C: \ Users \ Desktop \ a.txt', 'C: \ Users \ Desktop \ b.kml')  

  import os # Установить pathpath = 'a \ b \ c' # сохранить текущий рабочий каталогysaved_cwd = os.getcwd (  ) # измените ваш cwd на каталог, который содержит filesos.chdir (path) os.rename ('a.txt', 'b.klm') # возврат в каталог, в котором вы находились os.chdir (saved_cwd)  


  import os # Задайте pathpath = 'a \ b \  c '# сохранить текущий рабочий каталогysaved_cwd = os.getcwd () # изменить ваш cwd на каталог, который содержит filesos.chdir (путь) os.rename (' a.txt ',' b.klm ') # возврат в каталог  вы были в os.chdir (saved_cwd)  

  import shutilimport osfiles  = o  s.listdir ("./pics/") для ключа в диапазоне (0, len (файлы)): файлы печати [ключ] shutil.move ("./pics/" + files [key], "./pics/ img "+ str (key) +" .jpeg ")  

Это должно сработать. python 3+


  import shutilimport osfiles = os.listdir ("./pics /") для ключа в диапазоне (0, len (файлы)): файлы печати [ключ] shutil.move (" ./pics/"+ files [ключ]," ./pics/img "+ str (ключ) +  ".jpeg")  

Это должно сработать. python 3+


Если вы используете Windows и хотите переименуйте свои тысячи файлов в папке, затем: Вы можете использовать приведенный ниже код. (Python3)

  import ospath = os.chdir (input ("Введите путь к папке с изображениями:")) # Здесь укажите путь к папке, в которой находятся ваши изображения  are storedimage_name = input ("Введите имя вашего изображения:") # Здесь введите имя, которое вы хотите, чтобы ваши изображения имели i = 0 для файла в os.listdir (путь): new_file_name = image_name + "_" + str (i) + ".  jpg "# здесь вы можете изменить расширение переименованного файла.  Операционные системы. rename (file, new_file_name) i = i + 1input («Все изображения переименованы !!»)  


Если вы используете Windows и вы хотите переименовать свои тысячи файлов в папке: вы можете использовать приведенный ниже код. (Python3)

  import ospath = os.chdir (input ("Введите путь к папке с изображениями:")) # Здесь укажите путь к папке, в которой находятся ваши изображения  are storedimage_name = input ("Введите имя вашего изображения:") # Здесь введите имя, которое вы хотите, чтобы ваши изображения имели i = 0 для файла в os.listdir (путь): new_file_name = image_name + "_" + str (i) + ".  jpg "# здесь вы можете изменить расширение переименованного файла.  os.rename (file, new_file_name) i = i + 1input («Все изображения переименованы !!»)  

Использование Path.rename библиотеки Pathlib вместо os.rename:

  import pathliboriginal_path = pathlib.Path ('a.txt') new_path = original_path.rename  ('b.kml')  


Использование Path.rename библиотеки Pathlib вместо os.rename:

  import pathliboriginal_path = pathlib.Path ('a.txt') new_path = original_path.rename ('b.kml')  

os.chdir (r «D: Folder1 Folder2»)
os.rename (src, dst)
# src и dst должны находиться внутри Folder2


os.chdir (r «D: Folder1 Folder2»)
os.rename (src, dst)
#src и dst должны находиться внутри Folder2


  импорт осимпо  rt refrom pathlib import Pathfor f в os.listdir (training_data_dir2): для файла в os.listdir (training_data_dir2 + '/' + f): oldfile = Path (training_data_dir2 + '/' + f + '/' + file) newfile =  Путь (тренировочные_данные_dir2 + '/' + f + '/' + file [49:]) p = oldfile p.rename (newfile)  


  import osimport refrom pathlib import Pathfor f в os.listdir (training_data_dir2): для файла в os.listdir (training_data_dir2 + '/' + f): oldfile  = Путь (каталог_данных_учеников2 + '/' + f + '/' + файл) newfile = Путь (каталог_данных_учеников2 + '/' + f + '/' + файл [49:]) p = старый файл p.rename (новый файл) код> 

Оцените статью
techsly.ru
Добавить комментарий