⑴ python变量赋值的秘密分享
Python变量赋值的秘密分享
在Python中,我们令一个变量等于另外一个变量时,并不是把值传递给它,而是直接把指向的地址更改了。我们想要查看一个变量在内存中的地址,可以通过id(变量) 来查看。我们通过一个小例子来看看这个有趣的过程。
>>> x = 12
>>> y= 13
>>> id(x)
>>> id(y)
>>> x = y
>>> id(x)
>>> id(y)
首先给x变量赋值为12,y变量赋值为13,我们用id(变量)分别查看x和y在内存中的位置。上面显示分别为1865402384和1865402416。然后我们令x = y后,再查看一下它们在内存中的位置,发现x 和 y都指向了1865402416。由此可见,在python中,我们赋值的方式和C语言有所不同,c语言直接更改x那块内存里面的值,而Python直接改变x的指向,这让我想起了指针。
我们接着尝试一下,继续在这里输入下面的代码
>>> y = 12
>>> id(y)
1865402384
天!发生了什么??y在内存中的地址又变成1865402384了,准确说,y又指向了1865402384这块内存区域了。这样一看,和C语言的指针还真的很像呢。
⑵ python对多个变量循环赋值
先将 a1,a2 .. a12 放进一个以月份为key的字典中,然后通过循环data 放进相应的 list 中,例如下面代码:
#coding=utf-8
#定义12个List
a1=[]
a2=[]
a3=[]
a4=[]
a5=[]
a6=[]
a7=[]
a8=[]
a9=[]
a10=[]
a11=[]
a12=[]
#将12个List放进一个字典
a={1:a1,2:a2,3:a3,4:a4,5:a5,6:a6,7:a7,8:a8,9:a9,10:a10,11:a11,12:a12}
data=[1,2,3,4,3,4,12,11,9,7,5,6,7,8]
foritemindata:
a[item].append(item)
printa1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12
⑶ python实现同时给多个变量赋值的方法
python实现同时给多个变量赋值的方法
这篇文章主要介绍了python实现同时给多个变量赋值的方法,涉及Python中变量赋值的相关技巧,非常具有实用价值,分享给大家供大家参考。具体分析如下:
python中可以同时给多个变量赋值,下面列举了三种方法
# Assign values directly
a, b = 0, 1
assert a == 0
assert b == 1
# Assign values from a list
(r,g,b) = ["Red","Green","Blue"]
assert r == "Red"
assert g == "Green"
assert b == "Blue"
# Assign values from a tuple
(x,y) = (1,2)
assert x == 1
assert y == 2
希望本文所述对大家的Python程序设计有所帮助。
⑷ 如何同时赋值三个字符串Python
与两个变量的赋值方法一样。
1、交换两个变量可以简单的使用A, B = B, A的语句来完成。2、查看该函数的反汇编,可以看到python首先载入三个值,依次执行了ROT_THREE和ROT_TWO指令。3、函数的返回值可以是多个值。可以直接将函数返回值赋值给多个变量。
⑸ 编写Python程序,定义两个变量a,b并赋值,输出它们相加、相减、相乘、相除,求平均值的结果。
#这个还是比较简单的
a = input("a=")
b = input("b=")
print("a+b=",a+b)
print("a-b=",a-b)
print("axb=",a*b)
print("a/b=",a/b)
print("平均值:",(a+b)/2)
⑹ 关于python中的赋值变量的问题
同一个地址,类似于ActionScript3, python中的字符串是不变对象,不允许对其中的字符按下标修改.当为某个字符串变量赋新的字符串值时,仅仅是更改这个变量指向的地址
⑺ python3.6如何进行变量之间的加减
input() 返回的是键盘输入的一个字符串,需要转换成数值类型然后再相加,可以用 int() 将字符串转换成整型数值 。
例如:
A=int(input())
B=int(input())
C=A+B
print(C)
#或者
A=input()
B=input()
C=int(A)+int(B)
print(C)
⑻ python赋值后相加,请问怎么回事
eval()函数的作用是:将字符串str当成有效的表达式来求值并返回计算结果。
你给eval传的参数'n1:''n2:'都是字符串,无法当成有效的表达式来计算
程序应该改成如下这样:
n1
=
input('第二个数字:')
n2
=
input('第二个数字:')
print
(eval(n1)
+
eval(n2))
⑼ Python 3 同时给多个常量赋值的办法
# Have a look 👇👇👇
a = int(input("Please enter the words:"))
if a == 123:
print('x')
elif a == 231:
print('y')
elif a == 312:
print('z')
else:
print('Nothing at all.')
其中 123,231,312 均属于变量,可以被任意更改。而 x,y,z 则属于常量,将会被 a 赋值。
File Stdin..!
⑽ python如何表示2个变量的值相加所组成的算式
代码如下:
def
main(param):
param=param.replace(',',';')
exec(param)
print
a
print
b
print
c
param
=
"a=1,b=2,c=3"
main(param)
==============================
exec()函数可以将字符串转换为代码来执行,但是python中,两句语句间要用‘;’来隔开而不是‘,’。
所以叫加上一句
param=param.replace(',',';'),将逗号都替换为分号。
希望对你有所帮助!