Python把同一个对象循环赋值给另外一个变量
2017-12-25 11:53
489 查看
Python把同一个对象循环赋值给另外一个变量,修改一个对象,其他对象也修改了
如果不想复制对象,可以在循环赋值前初始化下被赋值的变量
>>> row=['_'] * 3 >>> board = [] >>> for i in range(3): ... board.append(row) ... >>> row ['_', '_', '_'] >>> board [['_', '_', '_'], ['_', '_', '_'], ['_', '_', '_']] >>> board[2][1]='A' >>> row ['_', 'A', '_'] >>> board [['_', 'A', '_'], ['_', 'A', '_'], ['_', 'A', '_']] #3个子对象都被修改了 >>>
如果不想复制对象,可以在循环赋值前初始化下被赋值的变量
>>> board = [] >>> for i in range(3): ... row=['_'] * 3 #循环赋值前,初始化下变量 ... board.append(row) ... >>> board [['_', '_', '_'], ['_', '_', '_'], ['_', '_', '_']] >>> row ['_', '_', '_'] >>> board[2][0] = 'X' >>> board [['_', '_', '_'], ['_', '_', '_'], ['X', '_', '_']] >>> row ['X', '_', '_'] >>>
相关文章推荐
- Python和Ruby中each循环引用变量问题(一个隐秘BUG?)
- python判断类型:想知道一个对象(实例或者变量)是什么类型,什么结构的
- Python----一个对象的属性可以是另外一个类型创建的对象
- Reflect 通过反射获取自定义注解值给另外一个对象赋值
- for循环一个list,元素赋值给另一个对象,修改另一个对象,竟然可以修改list
- Python3基础 判断变量大于一个数并且小于另外一个数
- Reflect 通过反射获取自定义注解值给另外一个对象赋值
- python 判断一个对象的变量类型
- c# 把一个匿名对象赋值给一个Object类型的变量后,怎么取这个变量? c# dynamic动态类型和匿名类 详解C# 匿名对象(匿名类型)、var、动态类型 dynamic 深入浅析C#中的var和dynamic
- python语句、表达式、对象、变量、赋值、函数传参
- Python高级编程-如何在在一个for循环中迭代多个可迭代对象
- 6-2-1 字符串-字符串变量String-创建字符串变量-初始化字符串变量-字符串连接-输入字符串(单词、行)-对象变量的赋值-比较两个字符串是否同一个-比较两个字符串内容是否相同
- Python 解压序列、可迭代对象并赋值给多个变量
- java中使用反射做一个工具类,来为指定类中的成员变量进行赋值操作,使用与多个类对象的成员变量的赋值。
- 将JSON对象、数组的值赋给另外一个对象,(互不影响) 对象赋值
- Python3基础 ,= 一个等式给多个变量赋值
- python_如何在一个for循环中迭代多个可迭代对象?
- python的直接赋值不会拷贝,只相当于变量的一个别名
- Python赋值原理:Python无变量,万物皆对象
- go和python变量赋值遇到的一个问题