对python创建及引用动态变量名的示例讲解

实际上在python中用列表就可以实现动态变量名的管理,python中的列表中可以存储任何类型的元素:

listA = [0,"str",B()]

上述列表分别存储了整数,字符串,对象。使用和创建时只需配合列表下标即可。

但python确实有创建动态表量名的方法:

names = locals()
for i in range(1,10):
  names['a%i'%i] = input('Abss %d'%i)
for i in range(1,10):
  print(names['a%i'%i])

以上这篇对python创建及引用动态变量名的示例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 浅谈Python浅拷贝、深拷贝及引用机制

    这礼拜碰到一些问题,然后意识到基础知识一段时间没巩固的话,还是有遗忘的部分,还是需要温习,这里做份笔记,记录一下 前续 先简单描述下碰到的题目,要求是写出2个print的结果 可以看到,a指向了一个列表list对象,在Python中,这样的赋值语句,其实内部含义是指a指向这个list所在内存地址,可以看作类似指针的概念. 而b,注意,他是把a对象包裹进一个list,并且乘以5,所以b的样子应该是一个大list,里面元素都是a 而当a对象进行了append操作后,其实,隐含的意思是,内存中的这个l

  • python中的对象拷贝示例 python引用传递

    何谓引用传递,我们来看一个C++交换两个数的函数: 复制代码 代码如下: void swap(int &a, int &b){    int temp;    temp = a;    a = b;    b = temp;} 这个例子就是一个引用传递的例子!目的是说明一下概念:引用传递的意思就是说你传递的是对象的引用,对这个引用的修改也会导致原有对象的改变.学过C/C++的朋友们都知道,在交换2个数的时候,如果自己实现一个swap函数,需要传递其引用或者指针. Python直接使用引用传

  • Python中实现变量赋值传递时的引用和拷贝方法

    iamlaosong文 曾经看到这样一个问题,一个字典中的元素是列表,将这个列表元素赋值给一个变量,然后修改这个列表中元素的值,结果发现,字典中那个列表也同样修改了. 那个问题如下: dict = {'a':[1,2,3,4,5],'b':2} x = dict['a'] for i in range(5): x[i] = 0 print(dict['a']) 程序运行结果如下: [0, 0, 0, 0, 0] 这儿涉及到Python赋值到底是引用还是拷贝一份的问题,即赋值时是传值还是传址.上面

  • 对python同一个文件夹里面不同.py文件的交叉引用方法详解

    比如有两个模块,一个aa.py,一个bb.py 代码如下: aa.py: #encoding:utf-8 import bb a=1 bb.py: #encoding:utf-8 import aa print aa.a 执行bb.py时,不能执行,打印错误 AttributeError: 'module' object has no attribute 'a' 原因: 如果执行bb的话,这时候bb是__main__,不是module,所以会执行到bb的from aa,这个时候python会执行

  • 解析Python中的变量、引用、拷贝和作用域的问题

    在Python中,变量是没有类型的,这和以往看到的大部分编辑语言都不一样.在使用变量的时候,不需要提前声明,只需要给这个变量赋值即可.但是,当用变量的时候,必须要给这个变量赋值:如果只写一个变量,而没有赋值,那么Python认为这个变量没有定义.如下: >>> a Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'a'

  • Python中的引用和拷贝浅析

    If an object's value can be modified, the object is said to be mutable. If the value cannot be modified,the object is said to be immutable. mutable 可变类型,例如 list,set,自定义类型(等价于C#中的引用类型): immutable 不可变类型,例如string,numbers等(等价于C#中的值类型): 一.引用和拷贝(references

  • Python切片索引用法示例

    本文实例讲述了Python切片索引用法.分享给大家供大家参考,具体如下: 在Python中,可以用用简单的方括号加一个下标的方式访问序列的每一个元素,这种方式称之为切片操作符,切片操作符有三种形式: [],[:],[::] 访问某一数据元素的语法如下: sequence[index] sequence是序列的名字,index是访问元素的对应的偏移量,为正数,0<=index<=len(sequence)-1:使用负索引的时候,其范围为-len(sequence) <=index <

  • Python中的引用和拷贝实例解析

    这篇文章主要介绍了python中的引用和拷贝实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一.引用 a = ['a', 'b', 'c'] b = a print(id(a)) print(id(b)) 135300560 135300560 可以看到,变量a 和 b 的 id是完全一样的,这就说明a和b是同时指向内存的同一个区域的,即b随a的变化而变化. a = ['a', 'b', 'c'] b = a a[1] = 'd' pr

  • 对python创建及引用动态变量名的示例讲解

    实际上在python中用列表就可以实现动态变量名的管理,python中的列表中可以存储任何类型的元素: listA = [0,"str",B()] 上述列表分别存储了整数,字符串,对象.使用和创建时只需配合列表下标即可. 但python确实有创建动态表量名的方法: names = locals() for i in range(1,10): names['a%i'%i] = input('Abss %d'%i) for i in range(1,10): print(names['a%

  • Python 创建空的list,以及append用法讲解

    Python中list的用法:如何创建list,如何表达list中的元素,如何修改和删除list 运行环境:Python 3.6.2 0.空list的创建: l = list() 或者: l = [] 1.list中元素的创建和表达 fruits = ['apple', 'banana', 'pear', 'grapes', 'pineapple', 'watermelon'] fruits[2] #从0开始数起,第三个元素 pear 2.list中元素的更改 fruits[2] = 'toma

  • python创建n行m列数组示例

    我就废话不多说了,直接上代码吧! >>> matrix=[None]*2 >>> print(matrix) [None, None] >>> for i in range(len(matrix)): matrix[i ]=[0]*3 >>> print(matrix) [[0, 0, 0], [0, 0, 0]] >>> 例 n = 2 m = 3 matrix = [None]*2 for i in range(

  • Python创建自己的加密货币的示例

    随着当前加密货币的兴起,区块链在技术界引起了轰动. 这项技术之所以吸引了如此多的关注,主要是因为它具有保证安全,强制分权和加快多个行业(尤其是金融行业)流程的能力. 本质上,区块链是一个公共数据库,它不可逆地记录和认证数字资产的拥有和传输.像比特币和以太坊这样的数字货币就是基于这个概念. 区块链是一项令人兴奋的技术,可用于转换应用程序的功能. 最近,我们看到政府,组织和个人使用区块链技术来创建自己的加密货币.值得注意的是,当Facebook提出自己的加密货币Libra时,这一公告激起了全世界的许

  • python创建模板文件及使用教程示例

    目录 写作思路 1.模板的定义 2.如何利用模板生成多个文件 运行结果 写作思路 1.模板的定义 2.如何利用模板生成多个文件 在很多情况下,我们会创建出很多样式相似甚至是相同的类文件,比如在Android文件创建的时候(由于Android Studio已经被我删除很久了,就没法实体展示).Visual Studio创建继承自虚方法的时候,创建出来的文件都已经自带了一些基础格式和基础方法 基于上述需求,有了利用模板类创建文件的功能 1.模板的定义 """ create in

  • Python 动态变量名定义与调用方法

    动态变量名赋值 在使用 tkinter 时需要动态生成变量,如动态生成 var1...var10 变量. 使用 exec 动态赋值 exec 在 python3 中是内置函数,它支持 python 代码的动态执行. 示例: In [1]: for i in range(5): ...: exec('var{} = {}'.format(i, i)) ...: In [2]: print(var0, var1, var2, var3 ,var4) 0 1 2 3 4 利用命名空间动态赋值 在Pyt

  • Python代码中引用已经写好的模块、方法的两种方式

    平时写的一些 Python 的代码,需要在其他模块里面复用.最粗狂的方法就是直接 copy 过去. 但这种方式太麻烦,copy 一堆代码,导致代码量也很多.copy 的也不爽. 下面就介绍两种方式,可以简洁明了地调用自己在其他模块写的代码. 个人推荐第二种方式. 方式一: 手动使用 sys 调用自己写的 Python 模块.方法 我的代码存在 E:\\PycharmProjects\\111 目录下.需要调用的代码是 mypy 下 my007.py 里的 funA() 方法. my007.py

  • Python创建二维数组实例(关于list的一个小坑)

    0.目录 1.遇到的问题 2.创建二维数组的办法 •3.1 直接创建法 •3.2 列表生成式法 •3.3 使用模块numpy创建 1.遇到的问题 今天写Python代码的时候遇到了一个大坑,差点就耽误我交作业了... 问题是这样的,我需要创建一个二维数组,如下: m = n = 3 test = [[0] * m] * n print("test =", test) 输出结果如下: test = [[0, 0, 0], [0, 0, 0], [0, 0, 0]] 是不是看起来没有一点问

  • Python创建模块及模块导入的方法

    本文实例讲述了Python创建模块及模块导入的方法.分享给大家供大家参考.具体分析如下: python学习手册中写道: 定义模块,只要使用文本编辑器,把一些python代码输入到文本中,然后以.py为后缀名进行保存,任何此类文件都会被认为是python模块. 比如说,下面的代码输入到一个文件中,就可以看作是一个模块: def printme(var): print var if __name__ == '__main__': printme(1) 假设说输入到a.py中,那么import a就可

  • Python中对象的引用与复制代码示例

    可以说Python没有赋值,只有引用.你这样相当于创建了一个引用自身的结构,所以导致了无限循环.为了理解这个问题,有个基本概念需要搞清楚. Python没有「变量」,我们平时所说的变量其实只是「标签」,是引用. python中,"a=b"表示的是对象a引用对象b,对象a本身没有单独分配内存空间(重要:不是复制!),它指向计算机中存储对象b的内存.因此,要想将一个对象复制为另一个对象,不能简单地用等号操作,要使用其它的方法.如序列类的对象是(列表.元组)要使用切片操作符(即':')来做复

随机推荐