欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

我的python学习笔记全集_我的python学习笔记

发布时间:2023/12/1 51 豆豆
生活随笔 收集整理的这篇文章主要介绍了 我的python学习笔记全集_我的python学习笔记 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

(此文是在实际工程中遇到的一些小问题,给予解决和整理。解决方法大多来自网上零散的文章。)

1——如下代码,

a=[1,2,3]

b=a

b也是[1,2,3]了,接着

a[0]=4a[1]=5a[2]=6

此时a变成[4,5,6]了,再看b,a变了之后没有对b进行新的引用,但b还是变了,自动的也变成[4,5,6]了。

除非对a进行新的赋值,比如

>>>a=[7,8,9]>>>a>>>[7,8,9]>>>b>>>[4,5,6]

这是因为列表被定义为是可变类型,相对的是不可变类型。如Python文档所示:

1

2

3

可以看到,不可变类型只有:数字,字符串,元组。其它的类型都是可以在名字不变的情况下,对其内容进行修改,并且会影响到其他引用它的变量。

再比如:

>>>a=[1] >>>c=[] >>>c.append(a) >>>c[[1]] >>>a.append(2) >>>c[[1,2]]

1.1——父作用域属性不会影响到子作用域。

>>> a =0>>> a = [1]>>> c =(a)>>>type(c)

list>>> c = (a, 1)>>>type(c)

tuple>>> a.append(2)>>>c

([1, 2], 1)

即元组不可变,但其内部的可变类型,如列表,可以随时改变

2——当你需要引用一个数组的其中一部分,而此数组的长度是不确定的,导致你有可能引用的范围超过了它的长度,可以在引用范围中加上一个冒号:

a_list = [] #此两行代码是正确的,不会报错

b_list= a_list[-1:] #比如-1后面的冒号

此时如果使用b_list=a_list[-1],程序会报错,“IndexError: list index out of range”;再比如

a_list 的长度随着程序的运行会变化,有可能是长3,也有可能变成5个元素,但必须保证b_list不能包含a_list的后面四个元素,

此时可以使用

b_list = a_list[:-4]

这样,即使a_list==[1,2,3],b_list也能成功引用,结果是b_list==[] 。

3——参数前加上单星号或双星号

4——改变对象值的方法是没有返回值的。比如

>>list_2 =list_1.reverse()

>>print(type(list_2))>>NoneType

>>

>>list_2 =list_1.remove(n)>>print(type(list_2))>>NoneType>>

5——max函数可加入参数key,

d = {'9':1, '11':1}

max(d)>>

6--json会把字典的数字键改为str

总结

以上是生活随笔为你收集整理的我的python学习笔记全集_我的python学习笔记的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。