day 1 python
Posted bohu83
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了day 1 python相关的知识,希望对你有一定的参考价值。
歇了好久,还是继续吧。
Python 是动态类型的:
s = 'hi'
s = 10
print(s)
输出 10 。不java 那种强类型的。
python中统一都是引用传递,同时要注意类型是属于对象的,而不是变量。而对象有两种,“可更改”(mutable)与“不可更改”(immutable)对象。在python中,strings, tuples, 和numbers是不可更改的对象,而list,dict等则是可以修改的对象.
不可变的对象:
a = 1;
b = a;
a = 2;
print(b);
输出的b =1
可变的对象:
a = [1,2,3]
b = a
a[0],a[1],a[2] = 4,5,6
print(b)
输出:4,5,6
如果是函数的传参:
a = 1
def fun(a):
a = 2
fun(a)
print("a:",a)
输出是:1 ,当一个引用传递给函数的时候,函数自动复制一份引用,这个函数里的引用和外边的引用没有关系。
def demo(obj):
print("原值:",obj)
obj+=obj
# 调用函数
list1=["","b","c","d"]
print("函数调用前:",list1)
demo(list1)
print("函数调用后:",list1)
输出:
函数调用前: ['', 'b', 'c', 'd']
原值: ['', 'b', 'c', 'd']
函数调用后: ['', 'b', 'c', 'd', '', 'b', 'c', 'd']
可变对象,如果参数在函数体内被修改,那么源对象也会被修改
以上是关于day 1 python的主要内容,如果未能解决你的问题,请参考以下文章