- 博客(3)
- 资源 (1)
- 收藏
- 关注
原创 对(x*x for x in range(10))理解
一直以为(x*x for x in range(10))和[x*x for x in range(10)]一样,只不过一个产生列表一个产生元组,但看过这篇文章发现完全不是这回事:Python迭代器和生成器详解 - 知乎 (zhihu.com) 总之(x*x for x in range(10))这种形式是生成器表达式。生成生成器的方式包括生成器函数和生成器表达式,以下是从链接文章搬来的图: ...
2022-04-19 14:05:33
2295
原创 python的列表:储存的是引用而不是变量本身
记录向,如题: a = [1,2,3] array = [a]*3 print(array) 输出:[[1, 2, 3], [1, 2, 3], [1, 2, 3]] a[0]=-1 print(array) 输出:[[-1, 2, 3], [-1, 2, 3], [-1, 2, 3]] 可以看出array[0]到array[2]和a指向了同一个对象(这里借用c指针的概念,可能不是很恰当)。 当改变a指向对象的值时,array的输出结果当然会变。 array[0] = [1] prin
2022-03-30 17:07:21
1160
原创 【python语法记录-1:变量的定义和引用】
1.对不可变对象:整型int、浮点型float、字符串型string和元组tuple,不允许变量的值发生变化,如果改变了变量的值,相当于是新建了一个对象。 2.可变对象,包括列表字典等复杂的类,允许变量值发生变化,改变了它们的值,变量地址不变, 3.Python 压根就没有变量的概念。用C或C++的变量概念去理解python就会一头雾水。C/C++中的变量的概念是面向内存的。所以你要声明一个变量:表明空间大小,存储的格式(整数,浮点),以及一个永久不变的名字指向这个变量。python只有name和obj
2021-12-19 15:27:23
3889
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅