鱼C论坛

 找回密码
 立即注册
查看: 2547|回复: 11

[已解决]请问大神怎么用for循环进行变量批命名

[复制链接]
发表于 2021-5-10 21:45:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
n = NN(4, 10)
class NN:

    def __init__(self, nh, hid_num):
        names = locals()
        print(hid_num)
        for i in range(hid_num):
            names['hidden_n' + str(i)] = nh
    print(hidden_n1)
自尝试用上述代码,结果为啥显示上述代码没有定义hidden_n1
最佳答案
2021-5-11 08:30:08
  1. class NN:
  2.     def __init__(self, nh, hid_num):
  3.         for i in range(hid_num):
  4.             exec(f'self.a{i} = nh')

  5. n = NN(4, 10)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-5-10 21:57:21 | 显示全部楼层
请大神指导一下,就是想应循环语句完成完成 a1 =1, a2=2, a3=3, a4=4....变量的幅值
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-10 22:01:21 | 显示全部楼层
有没有大神指导一下,在线等 急
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-10 22:04:06 | 显示全部楼层
  1. for i in range(1,10):
  2.     exec(f'a{i} = i')
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-10 22:10:58 | 显示全部楼层

我是想在上面的class里面的函数完成调用,您这种方法在里面应用也是显示没模型
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-10 22:37:51 | 显示全部楼层
  1. class NN:

  2.     def __init__(self,name, value):
  3.         for n, val in zip(name, value):
  4.             setattr(self, n, val)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-11 08:22:47 | 显示全部楼层
建议用字典
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-11 08:30:08 | 显示全部楼层    本楼为最佳答案   
  1. class NN:
  2.     def __init__(self, nh, hid_num):
  3.         for i in range(hid_num):
  4.             exec(f'self.a{i} = nh')

  5. n = NN(4, 10)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-11 08:55:03 | 显示全部楼层

字典还要一个个应用 后面没办法批处理
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-11 09:00:51 | 显示全部楼层

感谢大佬 但是我不太想用字典的形式实现
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-5-11 09:02:25 | 显示全部楼层

大佬厉害  昨天晚上我也是这么写的结果不对 今天改成你的就对了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-5-11 09:02:59 | 显示全部楼层
谢子仲 发表于 2021-5-11 09:02
大佬厉害  昨天晚上我也是这么写的结果不对 今天改成你的就对了

你可能少写个self
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-24 00:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表