如何使用Python重命名文件?

问题描述 投票:0回答:2

我尝试使用Python更改文件名,但名称没有改变。

程序必须拍摄照片,保存它,将其复制到服务器,更改复制照片的名称并更改原始照片的名称。 因此,首先我定义一个变量,它将是精确的日期和时间。之后,我拍照并保存为 imagen.jpg 接下来,我将 imagen.jpg 复制到其他路径(服务器路径),并尝试将其名称更改为我之前定义的变量。但名称没有改变,文件也被删除。

之后我用相同的功能更改了原始照片的名称,名称也更改了....我不知道为什么复制的照片没有更改名称。

这是代码:

import shutil
import picamera
import os
fecha = time.strftime("%c")  # En esta variable se guarda la fecha actual y la hora para renombrar la foto guardada          
camera.capture('/home/pi/Desktop/RaspAlarm/imagen.jpg')
print("Capturando foto")
time.sleep(5)
print("Copiando foto al servidor")
shutil.copy("/home/pi/Desktop/RaspAlarm/imagen.jpg", "/var/www/html/RaspAlarm/Fotos")
time.sleep(1)
os.listdir("/var/www/html/RaspAlarm/Fotos")
os.rename ("/var/www/html/RaspAlarm/Fotos/imagen.jpg", fecha)
print("Cambiando nombre al archivo")
os.rename ("/home/pi/Desktop/RaspAlarm/imagen.jpg", fecha)
time.sleep(1)
print("Foto guardada")

你能帮我吗?谢谢你

python copy rename
2个回答
1
投票

您的目的地名称错误。你基本上是在打电话:

os.rename("/var/www/html/RaspAlarm/Fotos/imagen.jpg", "Mon May  8 16:15:07 2017")

虽然你想要的看起来更像

os.rename("/var/www/html/RaspAlarm/Fotos/imagen.jpg", "/var/www/html/RaspAlarm/Fotos/Mon May  8 16:15:07 2017.jpg")

查看 os.rename

的文档

1
投票

一开始你的目的地是错误的!你应该写下所有的路径。 然后你应该删除 fecha 变量中的空格:

fecha = fecha.replace(' ', '')
os.rename("/var/www/html/RaspAlarm/Fotos/imagen.jpg", "/var/www/html/RaspAlarm/Fotos/{}.jpg".format(fecha))
© www.soinside.com 2019 - 2024. All rights reserved.