Thursday, September 17, 2015

python: math(13)

Abstract: generate a sequence using the model itertools

The result:
start=0,step=1
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
start=10, step=2
[10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48]
character cycl with string input abc:
['a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c', 'a', 'b']
cycle with list input [1, 2, 3]:
[1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2]
repeats of 10:
[10, 10, 10, 10, 10, 10, 10, 10, 10, 10]
character chain:
['a', 'b', 'c', '1', '2', '3', '4', '5', '6', 'd', 'g', 'h', 'j']
ok


The script:
# -*- coding: utf-8 -*-
"""
Created on Fri Sep 11 16:43:13 2015

@author: yuan
"""

import itertools

#generate a sequence

if __name__=="__main__":
    ############itertools.count()
    #iterator of arimethic regression
    print "start=0,step=1"
    a=itertools.count()
    print [next(a) for i in range(20)]   
    print 'start=10, step=2'
    a=itertools.count(10,2)
    print [next(a) for i in range(20)]
       
    ##############itertools.cycle()
    print 'character cycl with string input %s:'% 'abc'
    a=itertools.cycle('abc')
    print [next(a) for i in range(20)]
    print 'cycle with list input %s:' % [1,2,3]
    a=itertools.cycle([1,2,3])
    print [next(a) for i in range(20)]
   
    ###########itertools.repeat()
    print 'repeats of %s:' % 10
    a=itertools.repeat(10)
    print [next(a) for i in range(10)]
   
    #######itertools.chain()
    print 'character chain:'
    a=itertools.chain('abc','123456','d','ghj')
    print [i for i in a]
   
   
    print 'ok'

No comments:

Post a Comment