迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

在 Python 中将字符串转换为变量名

作者:迹忆客 最近更新:2023/02/27 浏览次数:

在 Python 中,可以通过多种方法将字符串值转换为变量的名称。在本文中,我们将讨论实现此目标的各种方法。

有些人可能想这样做,以便在执行 Python 程序时动态定义变量名。在开发可用于生产环境的软件时,建议不要使用以下所示的方式将字符串转换为变量名,因为这可能会引起一些问题。是的,可以实现这一点,但是在执行此操作时请务必谨慎。

Python 中的 globals() 函数返回当前全局符号表的字典。全局符号表存储与程序的全局范围有关的所有信息,可以使用 globals() 函数进行访问。

user_input = input("Enter string for variable name: \n")
globals()[user_input] = 50
print(apple)
print(type(apple))

输出:

使用 globals()函数将字符串转换为变量名

我们在这里要做的第一件事是使用 input() 函数从用户那里获取输入,并在其中传递一个字符串 Enter a string for a variable name:。然后,无论用户输入什么值,该值都将存储在变量 user_input 中。在这里,我们希望用户输入 apple 作为字符串值,然后将其存储在 user_input 中。如果用户输入的内容不是 apple,则程序将通过 NameError: name 'variable' is not defined 的错误提示。这是因为我们也在打印 apple 的值,然后稍后在我们的代码中检查它的类型。

如果用户输入了正确的值,我们可以使用 globals() 修改全局字典,以修改全局字典,并将任何值分配给变量 apple。在这里,我们为变量 apple 分配了 50

Python 中的 locals() 函数返回当前本地符号表的字典。可以通过 locals() 函数访问本地符号表。locals() 函数的工作方式几乎与 globals() 函数相同。唯一的区别是 locals() 可以访问本地符号表,而 globals() 可以访问全局符号表并返回字典。

user_input = input("Enter string for variable name: \n")
locals()[user_input] = 50
print(apple)
print(type(apple))

输出:

使用 globals()函数将字符串转换为变量名

此代码也与 globals() 相同。唯一的区别是我们在这里使用了 locals() 函数。

完成此操作的另一种方法是在 Python 中使用 exec() 函数。exec() 函数用于动态执行 Python 程序。我们有一个变量名称,其中存储了一个字符串值 Elon

name = 'Elon'
exec("%s = %d" % (name,100))
print(Elon)

输出:

100

exec() 函数内部,我们有%s%d 分别用作字符串值和十进制值的占位符。这意味着我们将在赋值运算符 = 的帮助下为字符串赋一个整数值。%s%d 都包含在引号""内。然后我们有一个括号,里面有 2 个东西,第一个是我们创建的变量,即 name,其中包含值 Elon,第二个是整数 100

在这里,将代替该变量中的值代替 name 变量。整数 100 将分配给 ElonElon 成为变量名,如果你打印它,将得到 100 作为输出。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Django 中的 Slug

发布时间:2023/05/04 浏览次数:173 分类:Python

本篇文章旨在定义一个 slug 以及我们如何使用 slug 字段在 Python 中使用 Django 获得独特的帖子。

Django ALLOWED_HOSTS 介绍

发布时间:2023/05/04 浏览次数:181 分类:Python

本文展示了如何创建您的 Django 网站,为公开发布做好准备,如何设置 ALLOWED_HOSTS 以及如何在使用 Django 进行 Web 部署期间修复预期的主要问题。

Django 中的 Select_related 方法

发布时间:2023/05/04 浏览次数:129 分类:Python

本文介绍了什么是查询集,如何处理这些查询以及我们如何利用 select_related() 方法来过滤 Django 中相关模型的查询。

在 Django 中上传媒体文件

发布时间:2023/05/04 浏览次数:198 分类:Python

在本文中,我们简要介绍了媒体文件以及如何在 Django 项目中操作媒体文件。

Django 返回 JSON

发布时间:2023/05/04 浏览次数:106 分类:Python

在与我们的讨论中,我们简要介绍了 JSON 格式,并讨论了如何借助 Django 中的 JsonResponse 类将数据返回为 JSON 格式。

在 Django 中创建对象

发布时间:2023/05/04 浏览次数:59 分类:Python

本文的目的是解释什么是模型以及如何使用 create() 方法创建对象,并了解如何在 Django 中使用 save() 方法。

在 Django 中为多项选择创建字段

发布时间:2023/05/04 浏览次数:75 分类:Python

在本文中,我们将着眼于为多项选择创建一个字段,并向您展示如何允许用户在 Django 中进行多项选择。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便