将用户定义的变量复制到字符串中

2024-05-20 19:22:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试复制一个用户定义的变量,例如:

print('Enter date required e.g. 2021-08-14 : ')
inputdate = input()

转换为如下字符串:

dest_dir = "N:/RAW Ingest Backup/2021/2021-08/inputdate".

如何将inputdate变量连接到dest_dir定义中


Tags: 字符串用户inputdateraw定义dirrequired
3条回答

假设输入的格式始终为“%Y-%m-%d”,则可以将str.split()与f字符串一起使用:

print('Enter date required e.g. 2021-08-14 : ')
inputdate = input()
year,month,day = inputdate.split("-")

dest_dir = f"N:/RAW Ingest Backup/{year}/{year}-{month}/{inputdate}"
'N:/RAW Ingest Backup/2021/2021-08/2021-08-14'

>>> dest_dir #with inputdate '2021-08-14'
'N:/RAW Ingest Backup/2021/2021-08/2021-08-14'

编辑

如果要验证用户输入是否为有效日期,请使用:

from datetime import datetime
print('Enter date required e.g. 2021-08-14 : ')
inputdate = input()
date = datetime.strptime(inputdate, "%Y-%m-%d")
dest_dir = f"N:/RAW Ingest Backup/{date.year}/{date.strftime('%Y-%m')}/{inputdate}"

>>> dest_dir #with input 2021-08-14
'N:/RAW Ingest Backup/2021/2021-08/2021-08-14'

你需要那样的东西吗

input_date = input("Enter a date: ")
destination_dir = rf"N:/RAW Ingest Backup/2021/2021-08/{input_date}"
print(f"Location is : {destination_dir}")

如果我错了,我真的不明白你的问题

#Thanks to you all for your advice. This is the solution to my problem
#works like a dream:

import shutil
import os

print('Enter date required e.g. 2021-08-14 : ')
inputdate = input()
year,month,day = inputdate.split("-")

# path to source directory.
src_dir = f"L:/Master_Images/{year}/{year}-{month}/{inputdate}"
print(f"Source Location is : {src_dir}")

# path to destination directory. **** Destination directory should not exist .
dest_dir = f"N:/RAW Ingest Backup/{year}/{year}-{month}/{inputdate}"
print(f"Destination Location is : {dest_dir}")

print('Collating all files from Source Directory')
files = os.listdir(src_dir)

print('Copying all files to Destination Directory')
# copy entire contents to the destination directory
shutil.copytree(src_dir, dest_dir)

相关问题 更多 >