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

如何在Python循环中根据用户选择指向目标IP列表?

解决Config类ip_list指向实际列表的问题

核心问题是你错误地将列表转成字符串赋值给了Config.ip_list,导致循环遍历字符。直接把列表对象赋值给它就能解决问题,不需要做字符串转换。

错误示例(导致遍历字符)

class Config:
    ip_list = ""

ip_list1 = ["192.168.1.1", "192.168.1.2"]
ip_list2 = ["10.0.0.1", "10.0.0.2"]

user_choice = 1
# 错误:把列表转成字符串赋值
if user_choice == 1:
    Config.ip_list = str(ip_list1)
else:
    Config.ip_list = str(ip_list2)

# 此时循环会遍历字符串的每个字符
for ip in Config.ip_list:
    print(ip)

正确写法(指向实际列表)

class Config:
    ip_list = []  # 初始设为空列表即可,也可以不初始化

ip_list1 = ["192.168.1.1", "192.168.1.2"]
ip_list2 = ["10.0.0.1", "10.0.0.2"]

user_choice = 1
# 直接赋值列表对象,无需转换
if user_choice == 1:
    Config.ip_list = ip_list1
else:
    Config.ip_list = ip_list2

# 现在循环会逐个取出列表中的IP地址
for ip in Config.ip_list:
    print(ip)

可选:避免原列表修改影响Config.ip_list

如果担心后续修改ip_list1或ip_list2会同步改变Config.ip_list,可以赋值列表的拷贝:

# 两种拷贝方式任选其一
Config.ip_list = ip_list1.copy()
# 或者
Config.ip_list = list(ip_list1)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 02:20:14