当前位置: 首页 > news >正文

7. 内置函数range()、循环结构

1. range()函数

用途:

        用于生成一个整数序列

创建range对象的三种方式:

        1. range(stop)  创建一个[0,stop]之间的整数序列,步长为1

        2. range(start,stop) 创建一个[start,stop]之间的整数序列,步长为1

        3. range(start,stop,step) 创建一个[start,stop]之间的整数序列,步长为step

返回值:

        一个迭代器对象

优点:

        不管range对象表示的整数序列有多长,所有range对象占用的内存空间都是相同的,因为仅仅需要存储start,stop和step,只有当用到range对象时,才会去计算序列中的相关元素

in 与 not in:

         判断整数序列中是否存在(不存在)指定的整数

def range_test():
    r = range(10)   # 含头不含尾
    print(list(r))  # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

    r = range(2, 10)
    print(list(r))  # [2, 3, 4, 5, 6, 7, 8, 9]

    r = range(1, 10, 2)
    print(list(r))  # [1, 3, 5, 7, 9]

    print(1 in r)  # True
    print(1 not in r)  # False

 2. 循环结构

while循环

判断N+1次,条件为True就继续执行N次

for循环

二重循环中的break和continue用于控制本层循环,不影响外层

 

def while_test():
    # return print(sum(range(0, 101, 2)))
    a = 1
    res = 0
    while a < 101:
        # if a % 2 == 0:
        if not bool(a % 2):
            res += a
            print(a)
        a += 1

    print(res)

 输出100-999之间的水仙花数

# 水仙花数 153 = 1*1*1+5*5*5+3*3*3
def for_test():
    for i in range(100, 1000):
        str_i = str(i)
        r = 0
        for j in str_i:
            r += int(j) ** 3
        if r == int(str_i):
            print(r)

for else 语句

def else_test():
    a = 0
    while a < 3:
        pwd = input('请输入密码')

        if pwd == '8888':
            print('密码正确')
            break
        else:
            print('密码不正确')
        a += 1
    else:
        print('三次密码输入不正确')

输出 99乘法表

def square_test():
    for i in range(1, 10):
        for j in range(1, i+1):
            # print 第二参数 默认是 \n 换行 \t table
            print(str(i) + '*' + str(j) + '=' + str(i * j), end='\t')  # 不换行输出
        print()  # 换行

3.总结

 

相关文章:

  • 利率浮动幅度bp什么意思,浮动利率bps换算百分比
  • 多个类型实现同一接口的方法
  • UE5物体高亮显示(蓝图版)
  • 解决el-tree子节点过多导致渲染缓慢问题
  • Selenium-下拉选择框、弹出框、滚动条操作
  • 机器学习算法——K近邻算法详解
  • 禁忌搜索算法TS求解TSP问题
  • Chapter 6 CNN(Convolutional Neural Network)
  • 网课题库接口搭建教程
  • 时代落在英伟达身上的是粒什么沙,国产GPU的机会又在哪?
  • 【软件测试】什么?这是最全的--金融行业测试类型细分,宝藏干G货......
  • c++学习笔记3_函数模板的使用并实现自己定义的队列
  • 进程地址空间
  • 接口与接口间怎样通过嵌套创造出新的接口?
  • HFCTF-2021-Final-easyflask
  • 分享一款快速APP功能测试工具
  • [译] 理解数组在 PHP 内部的实现(给PHP开发者的PHP源码-第四部分)
  • 【mysql】环境安装、服务启动、密码设置
  • Codepen 每日精选(2018-3-25)
  • express如何解决request entity too large问题
  • Hibernate【inverse和cascade属性】知识要点
  • JavaScript设计模式系列一:工厂模式
  • java概述
  • LintCode 31. partitionArray 数组划分
  • Python连接Oracle
  • React-生命周期杂记
  • 理清楚Vue的结构
  • 你不可错过的前端面试题(一)
  • 如何优雅的使用vue+Dcloud(Hbuild)开发混合app
  • 终端用户监控:真实用户监控还是模拟监控?
  • ​LeetCode解法汇总2696. 删除子串后的字符串最小长度
  • # Maven错误Error executing Maven
  • ###C语言程序设计-----C语言学习(3)#
  • #etcd#安装时出错
  • #pragma 指令
  • #我与Java虚拟机的故事#连载05:Java虚拟机的修炼之道
  • #我与Java虚拟机的故事#连载14:挑战高薪面试必看
  • (007)XHTML文档之标题——h1~h6
  • (2020)Java后端开发----(面试题和笔试题)
  • (3)(3.2) MAVLink2数据包签名(安全)
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第5节(封闭类和Final方法)
  • (Java岗)秋招打卡!一本学历拿下美团、阿里、快手、米哈游offer
  • (Matalb时序预测)WOA-BP鲸鱼算法优化BP神经网络的多维时序回归预测
  • (二)学习JVM —— 垃圾回收机制
  • (附源码)计算机毕业设计SSM疫情社区管理系统
  • (剑指Offer)面试题41:和为s的连续正数序列
  • (蓝桥杯每日一题)love
  • (原創) X61用戶,小心你的上蓋!! (NB) (ThinkPad) (X61)
  • (转)Android中使用ormlite实现持久化(一)--HelloOrmLite
  • (转)平衡树
  • *(长期更新)软考网络工程师学习笔记——Section 22 无线局域网
  • *p=a是把a的值赋给p,p=a是把a的地址赋给p。
  • .gitignore文件_Git:.gitignore
  • .md即markdown文件的基本常用编写语法
  • .NET 4.0中使用内存映射文件实现进程通讯