如何在Python中根据用户创建用于替换唯一文件路径的变量?

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

我正在编写代码,我想让这些代码对任何需要遵循它的人来说都是通用的。 部分代码正在读取用户必须下载的 Excel 文件。我知道每个用户都有一个特定的6位唯一ID,并且文件夹和文件名称保持不变。有什么方法可以让我修改 pd.read_csv 函数,使其像这样:

USERID = '123abc'
pd.read_csv(r'C:\Users\USERID\Documents\Dataset.csv') 

我一直陷入困境,因为 r 旁边有一个 ' 所以与常量的连接似乎不起作用。

同样,是否有一种导出代码的方法可以在标题中插入当前日期?

python pandas csv import
1个回答
0
投票

您要使用的是格式化字符串。代码中字符串文字前面的

r
表示您正在创建一个 原始字符串,这意味着您永远不会看到变量的值在该字符串中正确分配。 Python 的文档解释了这些原始字符串是什么:

字符串和字节文字都可以选择以字母“r”或“R”为前缀;此类字符串称为原始字符串,并将反斜杠视为文字字符。 (3.10.4 Python 语言参考,词法分析)

就像 Fredericka 在她的评论中提到的那样,格式化字符串是完成您想要做的事情的好方法。如果您使用的是 Python 3.6 或更高版本,您还可以在字符串上使用

format
方法,它可以执行相同的操作。

# set the User ID
user_id = "PythonUser1"

# print the full filepath
print("C:\\Users\\{}\\Documents\\Dataset.csv".format(user_id))

# read the CSV file using formatted string literals
my_csv = pd.read_csv("C:\\Users\\{user_id}\\Documents\\Dataset.csv")

# read the CSV file using the format method
my_csv = pd.read_csv("C:\\Users\\{}\\Documents\\Dataset.csv".format(user_id))

有关更多信息,我建议查看有关输入和输出的 Python 官方文档

© www.soinside.com 2019 - 2024. All rights reserved.