python常见代码用法

1.result = [[]] * n   和 result = [[] for _ in range(n)]  辨析

n = 3
result = [[]] * n

print(result)  
# 输出:[[],
#        [],
#        []]

print(result[0] is result[1] is result[2])  
# 输出:True

  * 运算符进行复制,这些空列表实际上是指向同一个内存地址的,它们是共享的。

n = 3
result = [[] for _ in range(n)]

print(result)
# 输出:[[],
#        [],
#        []]

print(result[0] is result[1] is result[2])
# 输出:False

使用列表生成式,我们创建了 n 个独立的空列表,它们在内存中具有不同的地址,对其中一个列表的修改不会影响到其他列表。

2.lambda arguments: expression

3.with 语句用法

Python 中的 with 语句用于异常处理,封装了 try…except…finally 编码范式,提高了易用性。

file = open('./test_runoob.txt', 'w')
file.write('hello world !')
file.close()

以上代码如果在调用 write 的过程中,出现了异常,则 close 方法将无法被执行,因此资源就会一直被该程序占用而无法被释放。

file = open('./test_runoob.txt', 'w')
try:
    file.write('hello world')
finally:
    file.close()

 以上代码我们对可能发生异常的代码处进行 try 捕获,发生异常时执行 except 代码块,finally 代码块是无论什么情况都会执行,所以文件会被关闭,不会因为执行异常而占用资源。

你可能感兴趣的:(python)