victory的博客

长安一片月,万户捣衣声

0%

一键更新Excel中的图表

场景: 小编每周都要更新最近12周的“生产订单周报”给老板,而且要对比最近两年相同周数的数据。主要是两张图,一张是“一周生产订单对比”,另一张是“各部门订单比例”。虽然在Excel表中建了数据透视表,但是每周都还是需要花时间进行一通凶猛的操作,才能搞定。可不可以每周一键更新,并得到这两张图呢?

阅读全文 »

生成器输出小于max_num的偶数或奇数

代码:

# 1.输出小于max_num的偶数或奇数
def odd(max_num):
    
    i = 1
    while i < max_num:
        if i % 2 == 0:  # if % 2 == 1可生成奇数
            yield i
        i += 1

g = odd(10)
for n in g:
    print(n)

# 2.输出任意个偶数或奇数
def odd():
i = 2
while i:
    if i % 2 == 0:  # if % 2 == 1可生成奇数
        yield i
    i += 1
g = odd()
for i in range(100):
    print(next(g))

生成器输出小于max_num的fibonacci数列

代码:

def feb(max_num):
    n_1 = 1
    n_2 = 1
    n = 0
    while n < max_num:
        if n == 0 or n == 1:
            yield 1
            n += 1
        else:
            yield n_1 + n_2
            new_n_2 = n_1
            n_1 = n_1 + n_2
            n_2 = new_n_2
            n += 1

g = feb(5)
for n in g:
    print(n)

生成器输出小于max_num的质数

通过列表生成式,我们可以直接创建一个列表。但是,受到内存限制,列表容量肯定是有限的。
而且,创建一个包含成百上千完个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前
面几个元素,那后面绝大多数元素占用的空间都白白浪费了。生成器有效的解决了这个问题。

阅读全文 »