You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为每个用户输入创建唯一变量名?现有报错代码能否实现?

实现为每个用户输入创建唯一变量名的需求

你的原代码存在几个明显错误:

  • 未定义变量n,range(n)会直接触发报错;
  • x(i) = input()是非法语法,Python不支持用函数调用的形式定义变量名。

不过这个需求是可以实现的,但不推荐直接创建x1、x2这类独立变量,更规范的做法是用字典或列表存储输入,既能避免命名污染,也方便后续访问和维护。

推荐实现方式:使用字典存储

字典的键可以设为你想要的唯一变量名(如x1、x2),对应的值为用户输入:

# 获取需要输入的数量
count = int(input())
# 初始化字典存储输入
input_storage = {}

for i in range(1, count + 1):
    var_name = f'x{i}'
    input_storage[var_name] = input()

# 打印结果:先输出数量count(对应原代码的x),再输出所有输入
print(count, end=' ')
for var in input_storage.values():
    print(var, end=' ')

不推荐的实现方式:动态创建全局变量

如果一定要生成x1、x2这类独立变量,可以借助globals()函数动态修改全局命名空间,但这种方式会让代码可读性变差,还容易引发命名冲突,仅作参考:

count = int(input())
x = count  # 对应原代码中x的赋值

for i in range(1, count + 1):
    var_name = f'x{i}'
    globals()[var_name] = input()

# 打印x、x1、x2...
print(x, end=' ')
for i in range(1, count + 1):
    print(globals()[f'x{i}'], end=' ')

内容的提问来源于stack exchange,提问作者John Smith

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 11:15:30