- 主题:如何优雅的生成类似[1,-3,5,-7……]这样的序列
rt
--
FROM 219.239.238.*
生成器不香么?
【 在 dyspnea (呼吸困难) 的大作中提到: 】
: 发信人: dyspnea (呼吸困难), 信区: Python
: 标 题: 如何优雅的生成类似[1,-3,5,-7……]这样的序列
: 发信站: 水木社区 (Fri Jun 12 09:05:01 2020), 转信
:
--
FROM 124.160.214.*
[(-1)**i*(2*i+1) for i in range(10)]
【 在 dyspnea (呼吸困难) 的大作中提到: 】
: 发信人: dyspnea (呼吸困难), 信区: Python
: 标 题: 如何优雅的生成类似[1,-3,5,-7……]这样的序列
: 发信站: 水木社区 (Fri Jun 12 09:05:01 2020), 转信
:
--
FROM 124.160.214.*
# 推导式写法
[-(i * 2 + 1) if i % 2 else (i * 2 + 1) for i in range(10)]
--
FROM 60.191.227.*
正负两个序列zip一下好了
【 在 dyspnea (呼吸困难) 的大作中提到: 】
: rt
--
FROM 122.225.220.*
sgn = lambda x: ....
[(2*x+1) * sgn(x) for ...]
【 在 dyspnea (呼吸困难) 的大作中提到: 】
: 标 题: 如何优雅的生成类似[1,-3,5,-7……]这样的序列
: 发信站: 水木社区 (Fri Jun 12 09:05:01 2020), 转信
:
: rt
:
: --
:
: ※ 来源:·水木社区 newsmth.net·[FROM: 219.239.238.*]
--
FROM 114.84.111.*
-1 n次方不香么
【 在 adoal 的大作中提到: 】
: 正负两个序列zip一下好了
:
--
FROM 117.136.0.*
是,尝试用生成器写了一个,但好像有点重
import operator
from itertools import *
c=starmap(operator.mul,zip(count(1,2),cycle([1,-1])))
【 在 touzi (猪圈里的野猪) 的大作中提到: 】
: 生成器不香么?
--
FROM 219.239.238.*
2楼不爽么?
【 在 dyspnea 的大作中提到: 】
: 是,尝试用生成器写了一个,但好像有点重
: import operator
: from itertools import *
: ...................
--
FROM 117.139.13.*
Python 3.8.3 (default, May 17 2020, 18:15:42)
[GCC 10.1.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from itertools import count, chain, islice
>>> t = chain.from_iterable(zip(count(1, 4), count(-3, -4)))
>>> list(islice(t, 4))
[1, -3, 5, -7]
--
修改:ilovecpp FROM 114.86.92.*
FROM 114.86.92.*