• 技术文章 >Python技术 >Python基础教程

    PyThon range()函数中for循环用法

    2020-10-23 14:46:44原创5545

    最初range和xrange都生成可以用for循环迭代的数字,然而在python2和3里实现方式并不完全一致,下面着重讲讲python3的range()函数for循环用法。

    1、函数语法

    range(start, stop, [step])

    2、参数说明

    start: 可选参数,计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5)

    stop: 必选参数,计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5

    step: 可选参数,步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

    3、在python3.8下

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    >>> print(list(range(5))) #从0开始,有5为正整数,到5结束,不包括5;步长=step=1为默认

      

    [0, 1, 2, 3, 4]

      

    >>> print(list(range(0,-10,-1))) #从0开始,到-10结束,不包括-10,步长=step=-1

      

    [0, -1, -2, -3, -4, -5, -6, -7, -8, -9]

      

    >>> print(list(range(5,50,10)))

      

    [5, 15, 25, 35, 45]

    4、for语句连用

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    for i in range(5): #注意冒号不可少,否则有语法错误

      

    print(i,end=',')

      

    0,1,2,3,4,xgj@xgj-PC:~$

      

    x = 'runoob'

      

    for i in range(len(x)) :

      

    print(x[i])

    执行结果:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    xgj@xgj-PC:~$ /usr/bin/python3.8 /home/xgj/Desktop/cy.py

      

    r

      

    u

      

    n

      

    o

      

    o

      

    b

      

    xgj@xgj-PC:~$

    注意:以上为正整数,升序的顺序

    示例:假设:12月31日,离新年只有10秒

    1

    2

    3

    4

    5

    6

    7

    print("The New Year is upon us !")

      

    for i in range(10,0,-1):

      

    print(str(i)+'...')

      

    print("Happy New Year !")

    输出结果:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    The New Year is upon us !

      

    10...

      

    9...

      

    8...

      

    7...

      

    6...

      

    5...

      

    4...

      

    3...

      

    2...

      

    1...

      

    Happy New Year !

    区别:

    1、其实python3是range()和python2是xrnage(),有区别的

    2、应该是技术进步,但是在这个模块不一定,可能叫“惰性技术”。

    3、占内存检测

    1

    2

    3

    4

    5

    6

    7

    import sys

      

    r=range(1,10000)

      

    size_r=sys.getsizeof(r)

      

    print(f"The range() function uses {size_r} bytes of memory.")

    用python2解释器不了,然而python3.8解释器得到:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    The range() function uses 48 bytes of memory.

      

    -----------------------------------------

      

    import sys

      

    xr=xrange(1,10000)

      

    size_xr=sys.getsizeof(xr)

      

    print(f"The xrange() function uses {size_xr} bytes of memory.")

    以上就是python里range()函数的用法,顺带给大家演示了在python2和python3里的不同。好啦~如果想要了解更详细的实用教程,可以点击查看PyThon学习网视频教程

    专题推荐:pythonrange函数for循环用法
    上一篇:Python中如何调用random()函数 下一篇:看不懂英文?pycharm如何改成中文界面

    相关文章推荐

    • PyThon基础教程:python删除文件详细教学• 如何实现python汇率转换代码

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网