我有以下代码:
public ActionResult Index()
{
var vm = new MyViewModel();
vm.IsSuperUser = _config.GetSuperUser();
return View(vm);
}
我的问题是,list = ["1", 0]
list2 = ["2", "0"]
str(list[1])
int(list2[1])
print(type(list[1]))
print(type(list2[1]))
input()
保持整数,就像list[1]
保持字符串一样。这背后的逻辑在哪里,还有其他方法可以成功转换吗?
答案 0 :(得分:5)
int
和str
根据输入构造 new int或str。它们不会改变列表 - 事实上,他们不知道输入值是否包含在列表中。
要更改列表中的元素,您需要将返回值分配回列表:
e.g。
lst[1] = str(lst[1])
答案 1 :(得分:1)
你只是调用这个函数,而不是将它分配给它。
应该是这样的:
list[1] = str(list[1])
list2[1] = int(list2[1])
然后它将具有所需的类型。