![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
流畅的python
以流畅的python一书为基础,学习python的一些小特性小知识
大海中一粒米
未知
展开
-
python小知识(6):元组
不可变列表元组可被称为不可变列表,如下试图修改元组元素时,出现错误:TypeError: 'tuple' object does not support item assignmentc = (1,2)c[1]#Out[7]: 2c[1]=2'''Traceback (most recent call last): File "D:\anaconda3\envs\tf\lib\site-packages\IPython\core\interactiveshell.py", lin原创 2020-08-28 16:47:50 · 241 阅读 · 0 评论 -
python小知识(5):生成器表达式
colors = ['black', 'white']sizes = ['S', 'M', 'L']for tshirt in ('%s %s' % (c, s) for c in colors for s in sizes): print(tshirt)#输出 """black Sblack Mblack Lwhite Swhite Mwhite L"""生成器表达式,不会再内存中生成所有元素的列表,只有在迭代时才会逐个生成对应元素,避免额外的内存占用经常用于列.原创 2020-08-28 16:18:25 · 117 阅读 · 0 评论 -
python小知识(1):collections.namedtuple
import collections#类Card,具有'rank', 'suit'两个属性Card = collections.namedtuple('Card', ['rank', 'suit'])#实例:beer_card = Card('7', 'diamonds')#输出:beer_card#Out[5]: Card(rank='7', suit='diamonds')原创 2020-08-28 11:16:51 · 239 阅读 · 0 评论 -
python小知识(2):列表推导
#生成扑克牌序列'2'~'A' ranks = [str(n) for n in range(2, 11)] + list('JQKA')#字符串转字符列表list('JQKA')#数字序列列表[n for n in range(2,11)]#数字转字符串[str(n) for n in range(2, 11)]原创 2020-08-28 11:25:01 · 291 阅读 · 0 评论 -
python小知识(3):序列类型
import collectionsCard = collections.namedtuple('Card', ['rank', 'suit'])class FrenchDeck: ranks = [str(n) for n in range(2, 11)] + list('JQKA') suits = 'spades diamonds clubs hearts'.split() def __init__(self): self._cards = [Card(rank, suit) f.原创 2020-08-28 11:46:00 · 141 阅读 · 0 评论 -
python小知识(4):如何让对象可运算
from math import hypotclass Vector: def __init__(self, x=0, y=0): self.x = x self.y = y def __repr__(self): return 'Vector(%r, %r)' % (self.x, self.y) def __abs__(self): return hypot(self.x, self.y) def __bool__(self): return.原创 2020-08-28 14:05:48 · 158 阅读 · 0 评论