导航:首页 > 编程语言 > python动态定义变量

python动态定义变量

发布时间:2023-01-02 15:03:43

A. python定义一个变量

a=111111111
print(a)
先对a进行定义,a就是一个变量

B. 如何用python动态生成变量名字

你好,方法如下:
要写一个程序,让linuxany1=1,linuxany2=2,… inuxany100=100,你会怎么做?
最容易想到的自然是eval,但是实际上根本不需要这种危险的东西,因为Python的变量名就是一个字典的key而已。要获取这个字典,直接用locals和globals函数即可。
>>> names = locals()

>>> for i in xrange(1, 101):

... names['linuxany%s' % i] = i

... >>> linuxany1
1 >>> linuxany2
2 >>> linuxany100
100
不过你也许会说这个例子没什么用,毕竟用数组来实现更为实用。
举一个例子:服务器使用一种对象数据库,可以直接保存对象到数据库中。服务器列出目前支持的所有类,而用户想添加一个不存在于列表中的类,于是向服务器发送一段JSON或XML文本。服务器解析这段文本,将它转换成一个class对象,并且设置类名。之后用户就可以随意生成这个类的对象。
关键是这个数据库和类名相关,你不能用一个通用的Object类来保存所有的对象,否则查询时就乱套了。
除了动态设置变量名,动态删除也是可以的,例如
del locals()['linuxany1']
同样,delattr也是可用的。
希望能帮到你。

C. python如何解决动态的定义变量名,并给其赋

变量名字只是为了用户使用方便而使用的,对于计算机,根本就不知道这中间的东西,看待这些都是使用内存的地址来判别的,对于你这样的情况是无法直接利用java实现的,不过可以使用另外一种方法.
就是定义一个类,类中有两个属性,一个是String类型,一个是int类型,这样循环定义100个对象,每个对象的String类型成员存放的是int1....int100,而int类性的成员则存放的是相应的数值。这样一来就可以轻松解决了,而且这一百个对象可以定义成例如 Fun[]bj=new Fun[100];这样一来,就可以利用数组的操作来实现任意操作了!!

D. python 类里面怎么使用动态的变量名

class ToolbarFrame(wx.Frame):
def __init__(self,id):
self.__dict__['test_%d'%1] = 1

E. python中如何定义变量

Python 中的变量赋值不需要类型声明,这一点和其他java,c,c++语言都不相同。
counter = 100 # 赋值整型变量
miles = 1000.0 # 浮点型
name = "John" # 字符串
print counter
print miles
print name
----------------------
执行以上程序会输出如下结果:
100
1000.0
John

F. python怎么定义一个变量

这个做不到。1楼的做法不能达到目的。定义普通整数时,占用的内存是4字节。如果是为了读写二进制数据

G. 浅谈python中的变量赋值

在python中,变量赋值的语法比较简单,语法就是 “变量名 = 对象”,由于python属于动态语音,所以不需要像c、 java那样在变量赋值时需要声明变量的类型。

c 变量赋值

int x = 1;

python 变量赋值

x = 1

y = "hello world!"

a = [1, 2]

b = ('a', 'b')

c = {"foo": "bar"}

python 变量赋值中,所涉及到的变量命名是有一定规则的:

1. 变量名只能包含字母、数字和下划线。变量名可以字母或下划线开头,但不能以数字开头,例如,可将变量命名为name_1,但不能将其命名为1_name

2. 变量名不能包含空格,但可使用下划线来分隔其中的单词。例如,变量名name_one可行,但变量名name one会引发错误。

3. 不要将Python关键字和函数名用作变量名,即不要使用Python保留用于特殊用途的单词,如not、pass等。

4. 变量名应既简短又具有描述性。例如,name比n好,student_name比s_n好,name_length比length_of_persons_name好, 虽说简短好,但是不能依照自己的意愿随意简写,尽量使用大家约定俗成的简写,如果不是还不如写全拼。

5. python 变量名中大小写敏感,所以 NAME, Name, name 代表三个不同的表里名, 这里提一下就是慎用小写字母l和大写字母O,因给他们可能被人错看成数字1和0;

再说变量赋值中赋予给变量的值,python中万事皆对象,所以python中只要是对象就能给变量赋值。如:

    x = 1 # x赋值为数字1;

    x = sum # x赋值为内建求和函数sum;

python的赋值真实上说应该不是赋值,而更像是“引用”,如何理解“引用”呢,python中一直对象的生成是会在内存中分配给一个内存地址,这个内存地址可以使用id()方法去获取,然后在变量赋值时,将变量直接引用该对象的内存地址,进而完成变量赋值,如:

    x = 1, 赋值时x直接引用1所在内存的地址, y = x, 此时是y直接引用x的所指向的内存地址

python中有判断变量的方法如 is() 和 ==,二者在判断变量时是有区别的,is函数是判断变量的内存地址是否相同,而 == 是判断变量的值是否相同,举例说明:

    a = 1; b = 1.0

    a is b  # False

    a == b # True

小心python变量赋值的陷阱

    看到上面的所述知道了python变量赋值实则是引用,引用的是对象的内存地址。所赋的值可以分两类,一类是可变的,如列表,字典,集合;一类是不可变的,如字符串、元组。所以当对象为可变类型时就会出现一种情景,我们举例说明:

    x = [1, 2, 3]

    y = x

    print x == y    # True

    print x is y    # True

    print x     # [1, 2, 3]

    print y     # [1, 2, 3]

    y.append(4)

    print x    # [1, 2, 3, 4]

    print y    # [1, 2, 3, 4]

可以看到y在进行调整时(添加了一个元素),x也跟着变动了,这进一步说明了,python中的变量赋值时引用,x,y 赋值时指向了同一处内存地址,所以当y变动时,x同样也发送了变化,解决这中现象的方法可以是x, y = [1,2,3], [1,2,3]这样赋值,虽说此时 x==y 是True,但是确实是2个不同的内存地址,所以 x is y 则是 False。或者可以使用模块,实质是相同的,创建2个不同的内存地址,使其分离。

H. python 定义变化的变量名称

利用命名空间动态赋值。在 Python 的命名空间中,将变量名与值存储在字典中,可以通过 locals(),globals() 函数分别获取局部命名空间和全局命名空间。
实例:
names = locals()
for i in range(5):
names['n' + str(i) ] = i
print(n0, n1, n2, n3, n4)
输出结果:
0 1 2 3 4

I. python可以不加声明就使用变量

是的,Python允许在程序中使用未声明的变量。但是,这并不是一个好的编程实践,因为在使用未声明的变量时,可能会导致一些问题。例如,如果你误解了变量的名称或类型,那么这可能会导致程序出错。因此,最好还是声明变量并给它们赋初值。

J. Python中在定义变量时为什么不需要指定数据类型

Python是一门动态语言,也可以称为是一种弱类型语言,在变量定义时,并不需要明确的给出数据的类型,程序在执行时,解释器会根据实际数据的类型进行自动推导。Python定义变量全套的教程在黑马程序员都可以找到,讲的老师很有名。免费的。

阅读全文

与python动态定义变量相关的资料

热点内容
俄罗斯解压缩软件 浏览:685
富士通单片机仿真器 浏览:846
华为无线配置命令 浏览:150
dumpjava内存 浏览:874
贴吧app怎么复制贴子链接 浏览:260
果然程序员大多都容易秃头 浏览:909
优选源码库会员 浏览:583
便笺能否整理与设立文件夹管理 浏览:601
同花顺筹码起爆公式源码大全 浏览:55
android音频移植 浏览:1000
国际服服务器繁忙怎么重新连接 浏览:355
pdf怎么保存jpg 浏览:775
服务器被封号怎么解封 浏览:773
云服务器查看内存 浏览:357
怎么在韩国服务器玩绝地求生 浏览:943
服务器被ban的物品怎么合成 浏览:989
如何理解压和垂 浏览:481
程序员的爱情秘密 浏览:266
量子计算机会影响程序员吗 浏览:659
安卓开发如何与服务器连接电脑 浏览:993