精华内容
下载资源
问答
  • = row:print("*" end="")col += 1print("")row += 1上面的这个代码运行完之后,打印出来的是这样的:***************我当时学while嵌套循环时,理解上面的这个代码全部运行完之后的结果:为什么能够在打印第n行时...

    首先我给大家分享一个代码:

    row = 1

    while row <= 5:

    col = 1

    while col <= row:

    print("*" end="")

    col += 1

    print("")

    row += 1

    上面的这个代码运行完之后,打印出来的是这样的:

    *

    **

    ***

    ****

    *****

    我当时学while嵌套循环时,不理解上面的这个代码全部运行完之后的结果:为什么能够在打印第n行时能够在第n行打印n个*。

    后来我发现原来是我遗漏了一个非常重要的条件,从而导致我不理解以上代码的结果,那就是:我定义的col计数变量是在第一个while里面,而不是在第一个while外面。

    首先,当里面的while每运行完一次之后,col的值都理所当然的加上一个1(在这里我令加上1之后的col的值为col1),导致里面的while想要再次运行第二遍的时候却因为col1的值大于row的值,而使运行中的代码直接跳过里面的while循环,而直接运行后序的代码,比如运行 print("") 和 row += 1 (在这里我令加上1之后的row的值为row1)。

    然后,row被重新附值完之后,代码又从外面的while开始从头运行。当row1被判断为小于等于5之后,运行下一行代码col = 1,这个时候原本被附过值的col(col = col1)又再一次被重新附值为1,然后才再次运行里面的while,而不是col = col1时运行里面的while。

    多说一句,很多人学Python过程中会遇到各种烦恼问题,没有人解答容易放弃。小编是一名python开发工程师,这里有我自己整理了一套最新的python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。想要这些资料的可以关注小编,并在后台私信小编:“01”即可领取。

    展开全文
  • 我有类似Python中的以下WHILE循环结构(完全相同).IDLE 2.6.4>>> a=0>>> b=0>>> while a < 4:a=a+1while b < 4:b=b+1print a, b1 11 21 31 4我期待外循环遍历1,2,3和4.我知道我...

    我是

    Python的初学者,尝试过几个程序.我有类似Python中的以下WHILE循环结构(不完全相同).

    IDLE 2.6.4

    >>> a=0

    >>> b=0

    >>> while a < 4:

    a=a+1

    while b < 4:

    b=b+1

    print a, b

    1 1

    1 2

    1 3

    1 4

    我期待外循环遍历1,2,3和4.我知道我可以用这样的FOR循环来做这个

    >>> for a in range(1,5):

    for b in range(1,5):

    print a,b

    1 1

    1 2

    .. ..

    .. .. // Other lines omitted for brevity

    4 4

    但是,WHILE循环有什么问题?我想我错过了一些显而易见的事情,但无法理解.

    回答:

    修正后的WHILE循环..

    >>> a=0

    >>> b=0

    >>> while a < 4:

    a=a+1

    b=0

    while b<4:

    b=b+1

    print a,b

    1 1

    .. ..

    .. .. // Other lines omitted for brevity

    4 4

    P.S:搜索出SO,发现few questions但没有一个接近这个.不知道这是否可以归类为家庭作业,实际的程序是不同的,问题是困扰我的.

    展开全文
  • 我想把我的循环压缩成一个while循环,但我知道怎么做。有人帮帮我吗?我的代码是:import sysn = int(sys.argv[1])# step 1 four nested loopsfor a in range(1, n + 1):a3 = a*a*aif a3 > n:breakfor ...

    我是python的初学者,我已经用我从eclipse学到的东西编写了4个嵌套for循环。我想把我的循环压缩成一个while循环,但我不知道怎么做。有人能帮帮我吗?我的代码是:import sys

    n = int(sys.argv[1])

    # step 1 four nested loops

    for a in range(1, n + 1):

    a3 = a*a*a

    if a3 > n:

    break

    for b in range(a + 1, n + 1):

    b3 = b*b*b

    if a3 + b3 > n:

    break

    for c in range(a + 1, n + 1):

    c3 = c*c*c

    if c3 > a3 + b3:

    break

    for d in range(c + 1, n + 1):

    d3 = d*d*d

    if c3 + d3 > a3 + b3:

    break

    if a3 + b3 == c3 + d3:

    print str(a3 + b3), " = ", a, "^3", " + ", b, "^3", " = ", c, "^3", " + ", d, "^3"

    展开全文
  • if判断判断的定义如果条件满足,就做一件事;条件不满足,就做另一件事;...但应注意,在python开发中,tab和空格不能混用!判断年龄示例:# 判断是否成年,成年则可以进网吧age = 19if age>=18:pr...

    if判断

    判断的定义

    如果条件满足,就做一件事;条件不满足,就做另一件事;

    判断语句又被称为分支语句,有判断,才有分支;

    if判断语句基本语法

    if语句格式:

    if 判断的条件:

    条件成立后做的事

    ...

    ...

    代码缩进为一个tab键,或者四个空格,官方建议使用空格;但应注意,在python开发中,tab和空格不能混用!

    判断年龄示例:

    # 判断是否成年,成年则可以进网吧

    age = 19

    if age>=18:

    print("你满了18岁,可以进网吧")

    if及其缩进代码可以看成一个完整的代码块

    比较运算符简介

    运算符

    描述

    ==

    比较两个操作数的值是否相等,相等则返回True,否则返回False

    !=

    比较两个操作数的值是否不相等,不相等则返回True

    >=

    检查左操作数的值是否大于等于右操作数的值,成立则返回True

    <=

    检查右操作数的值是否大于等于左操作数的值,成立则返回True

    <

    检查右操作数的值是否大于左操作数的值,成立则返回True

    >

    检查左操作数的值是否大于右操作数的值,成立则返回True

    注意,在python2.x中,<>和!=作用和效果一样;但在python3中,已经取消了<>这个比较符号。

    else语句

    if只能够用来 当条件满足时做某事,而else则用来当条件不满足时做另外的事。

    else语法格式:

    if 判断的条件:

    条件成立后应该做的事

    else:

    条件不成立时应该做的事

    判断年龄改进版

    age = 18

    if age>=18:

    print("已成年,可以进网吧")

    print("欢迎来到xxx网吧")

    else:

    print("未成年,请以后再来")

    print("慢走") # 无论条件是否满足,都会执行

    控制台输入年龄示例

    age = int(input("请输入你的年龄:"))

    if age>=18:

    print("已成年,可以进网吧")

    print("欢迎来到xxx网吧")

    else:

    print("未成年,请以后再来")

    print("慢走")

    应注意的是,控制台输入的被python解释器认为是字符串,字符串不能与数字比较,应该现将从控制台输入的年龄转换成数字;

    if,else及其各自的缩进代码可以看成一个完整的代码块;

    虽然他们并不能折叠成一个代码块,但其实就是,之所以各自折叠的原因是因为它们各自是局部代码;

    逻辑运算符

    逻辑运算符简介

    逻辑运算符的使用:当需要同时判断多个条件是否成立以执行后续的代码时

    与或非,与或是用来连接条件的,非不连接条件,是用来对条件取反的;

    and 与

    条件1 and 条件2

    必须两个条件同时满足,才是真,返回True;

    只要有一个条件不满足,就是假,返回False。

    or 或

    条件1 or 条件2

    两个条件只要有一个满足,就是真,返回True;

    只有两个条件都不满足,才是假,返回False。

    not 非

    not 条件

    非不连接条件,用来对条件取反;

    not使用场景:当希望 条件不满足时执行某件事情,可以用not;

    另外,如果是拼接复杂的逻辑计算时,也可能用到not。

    逻辑运算符使用示例

    示例1:

    # 逻辑判断年龄是否正确

    age = 40

    if age>=0 and age<=120:

    print("年龄正确")

    else:

    print("年龄错误")

    示例2:

    # not判断公司员工

    is_employee = False

    if not is_employee:

    print("非本公司员工,禁止入内")

    elif语句

    elif应用场景:希望判断多个条件,并且多个条件对应不同的处理方式时;

    elif中 同时判断多个条件,所有的条件是平级的。

    elif的语法:

    if 条件1:

    条件1满足时,就执行这里面的代码

    elif 条件2:

    条件2满足时,就执行这里面的代码

    elif 条件3:

    条件3满足时,就执行这里面的代码

    else:

    如果上述条件都不满足,就执行这里的代码

    elif应用示例

    # 判断是否为女友的节日并作出相应动作

    day = "birthday"

    if day == "birthday":

    print("buy cake")

    elif day = "Valentine's Day":

    print("buy rose")

    elif day = "Christmas Eve":

    print("eat apple")

    else:

    print("Everyday is her holiday!")

    if嵌套

    if嵌套的应用场景:用来判断多个有前后依赖的场景,在前一个条件满足的情况下,再额外增加条件判断时使用;

    if嵌套的语法:

    if 条件1:

    if 条件1.1:

    条件1.1满足时,就执行这里面的代码

    elif 条件1.2:

    条件1.2满足时,就执行这里面的代码

    else:

    如果上述条件都不满足,就执行这里的代码

    elif 条件2:

    条件2满足时,就执行这里面的代码

    elif 条件3:

    条件3满足时,就执行这里面的代码

    else:

    如果上述条件都不满足,就执行这里的代码

    火车站检票安检代码

    # 有火车票后进入安检环节,没有票就不允许进,安检环节如果满足条件就进入,不满足就进行提醒

    has_ticket = True

    knife_length = 30

    if has_ticket:

    print("检票完成,进入安检环节")

    if knife_length > 20:

    print("你携带的道具有 %d厘米,不符合规定,不允许上车!"%knife_length)

    else:

    print("安检成功,祝你旅途愉快")

    else:

    print("没有票,不允许进入,请先购票")

    所学综合应用

    # 开发一个剪刀石头布的人机对战游戏

    import random

    player = int(input("请选择你的出拳,只需输入数字:1.石头 2.剪刀 3.布))

    computer = random.randint(1,3)

    print("玩家选择的是%d,电脑选择的是%d"%(player, computer))

    if ((palyer == 1 and computer == 2)

    or (palyer == 2 and computer == 3)

    or (palyer == 3 and computer == 1)):

    print("恭喜你,你赢了")

    elif player == computer:

    print("平局,这么巧")

    else:

    print("不好意思,你输了")

    一行过长代码的换行

    原来:

    if (palyer == 1 and computer == 2) or (palyer == 2 and computer == 3) or (palyer == 3 and computer == 1):

    print("你赢了")

    换行:

    if ((palyer == 1 and computer == 2)

    or (palyer == 2 and computer == 3)

    or (palyer == 3 and computer == 1)):

    print("你赢了")

    while循环的基本使用

    程序的三大流程

    程序只有三个流程,顺序,分支,循环

    从上到下,顺序;

    条件判断,分支;

    特定代码重复执行,循环;

    while语句基本语法

    初始条件(例如 i=1)

    while 条件:(例如 i<=5)

    满足条件时做的事(xxx)

    处理条件(例如 i=i+1)

    循环结束后做的事(xxx)

    第一个while循环示例

    i =1

    while i<=5:

    print("hello python")

    i = i+1

    print("循环结束")

    注意,循环结束后,之前定义的计数器条件的数值依旧是存在的;

    死循环:没有对计数器进行处理,导致程序一直在循环部分执行,无法跳出;

    python中的赋值运算符

    i += 1 ---> i = i+1

    -=

    i /= 2 ---> i = i/2

    *=

    //=

    %=

    **=

    注意,赋值运算符之间不能有空格;

    程序计数从0开始

    自然计数法,从1开始,符合人的习惯

    程序计数法,从0开始,几乎所有的语言都是如此

    循环计算示例

    循环计算思路分析

    先在外面定义一个变量用来保存计算结果;

    每循环一次就更新一下变量的计算结果。

    示例1:

    # 0到100数字累加

    i = 0

    sun = 0

    while i <= 100:

    sum += i

    i += 1

    print("循环结束,0到100的求和结果是%d" % sum)

    示例2:

    # 偶数求和之计算结果

    i = 0

    sum = 0

    while i <= 100:

    if i%2 == 0:

    sum += i

    i += 1

    print("循环结束,0到100的求和结果是%d" % sum)

    break和continue

    break和continue的使用场景

    break和continue是专门在循环中使用的关键字

    break 某一条件满足时,退出循环,不再执行后续重复的代码

    continue 某一条件满足时,不执行后续的重复代码

    break和continue只对当前所在循环有效

    break打断整个循环

    continue打断一次小循环

    break代码演练

    i = 0

    while i<10:

    if i == 3:

    break

    print(i)

    i+=1

    continue代码演示

    i = 0

    while i<10:

    if i == 3:

    # 在循环中,使用continue之前,需确认循环的计数是否需要修改,否则很容易造成死循环。

    i += 1

    continue

    print(i)

    i+=1

    循环嵌套

    循环嵌套语法

    while 条件1:

    条件满足时,做的事...

    while 条件2:

    条件满足时,做的事...

    处理条件2

    处理条件1

    print函数end参数的作用

    默认情况下,print函数会在结尾自动增加换行;而用end参数的话,可以用end指定的内容替换换行,比如空格,就是调整print函数不换行;再比如end="---",就是在添加end的print输出语句和下一个输出语句之间不换行且添加---

    print("1")

    print("2")

    print("1", end="")

    print("2")

    print("1", end="---")

    print("2")

    循环嵌套使用案例

    案例1.打印五行小星星

    row = 1

    while row <= 5:

    # 每一行要打印的小星星数量和当前行数是一样的

    # 增加一个小循环,专门负责当前行中,每一列的小星星输出

    col = 1

    while col <= row:

    print("*", end="")

    col += 1

    print("")

    row += 1

    重点看其中的思路!

    案例2.九九乘法表案例

    row = 1

    while row <= 9:

    col = 1

    while col <= row:

    # print("*", end="")

    # print("9 * 9 = 81", end=" ")

    # print("9 * %d = 81" % row, end=" ")

    # print("%d * %d = %d" % (col, row, col*row), end=" ")

    print("%d * %d = %d" % (col, row, col*row), end="\t") # 加\t的原因是,为了对齐美观

    col += 1

    print("")

    row += 1

    字符串中的转义字符

    转义字符

    描述

    \

    反斜杠符号

    单引号

    "

    双引号

    \n

    换行

    \t

    横向制表符

    \r

    回车

    t在控制台输出一个制表符,协助在输出文本时垂直方向保持对齐;

    制表符的作用是在不适用表格的情况下在垂直方向按列对齐文本;

    \n在控制台输出一个换行符。

    print("1 2 3")

    print("10 20 30")

    # \t在控制台输出一个制表符,协助在输出文本时垂直方向保持对齐,制表符的作用是在不适用表格的情况下在垂直方向按列对齐文本

    print("1\t2 \t3")

    print("10\t20\t30")

    # \n在控制台输出一个换行符

    print("hello\nworld")

    print("hello\"world")

    # 输出

    1 2 3

    10 20 30

    1 2 3

    10 20 30

    hello

    world

    hello"world

    展开全文
  • if判断判断的定义如果条件满足,就做一件事;条件不满足,就做另一件事;判断语句又被称为分支语句...但应注意,在python开发中,tab和空格不能混用!判断年龄示例:# 判断是否成年,成年则可以进网吧age = 19if age...
  • 自学Python3中的while循环嵌套

    千次阅读 2019-05-18 19:56:00
    while循环中重复执行的代码又包含了另一个while循环 循环嵌套基本语法 : …while 条件 : …------while 条件 : …-------------反复执行的代码 注意事项 : …break和continue仅能控制其所在的循环结构,不能控制...
  • if判断判断的定义如果条件满足,就做一件事;条件不满足,就做另一件事;...但应注意,在python开发中,tab和空格不能混用!判断年龄示例:# 判断是否成年,成年则可以进网吧age = 19if age>=18:pr...
  • while (a ) { while (b ) { c = 45 - a - b; if (a * 3 + b * 2 + 0.5 * c == 45) printf("men=%d,women=%d,child=%d\n", a, b, c); b++; } a++; } return 0; } ```
  • 作为SQL新手第一次写循环嵌套的办法,但是大家会发现一个问题,那就是变量@i总是不能进入第二个循环。 declare @i int ,@j int, @k int set @i = 1 set @k = 1 set @j = 1 --注意 set @j=1 的位置, @j 是内部循环...
  • SQL WHILE 循环 嵌套

    千次阅读 2014-11-28 00:41:20
     - 内循环变量在选环后要重新赋初值,否则不能循环。 代码如下: DELIMITER $$ USE `qqfs_db_items`$$ DROP PROCEDURE IF EXISTS `qqsf_proc_InsertItemTest`$$ CREATE DEFI
  • 晚上的时候我有突然想到,能不能用一个for循环加上if判断写出来九九乘法表。自己想了一晚上没有想出来。- - ! while嵌套: w = 1 while w < 10: #外层循环 n = 1 # 内层循环 while n <= w: # 外层...
  • 我需要一个新的程序来测试我的程序。对于两个圆,我提示用户输入x和y坐标的值,以及两者的半径。目前,我已经将其设置...我使用了嵌套while循环。这是我的代码:while c_1_x=="" or c_1_y=="" or c_1_r=="":print...
  • 但应注意,在python开发中,tab和空格不能混用! 判断年龄示例: # 判断是否成年,成年则可以进网吧 age = 19 if age>=18: print("你满了18岁,可以进网吧") if及其缩进代码可以看成一个完整的代码块 比较运算符...
  • if判断 判断的定义 如果条件满足,就做一件事;条件不满足,就做另一件事; 判断语句又被称为分支语句,有...但应注意,在python开发中,tab和空格不能混用! 判断年龄示例: # 判断是否成年,成年则可以进网吧 age...
  • 条件不满足时,则不能做,这就是所谓的判断。不仅生活中有,在软件开发中"判断"功能也经常会用到if语句是用来进行判断的,其使用格式如下:if 要判断的条件:条件成立时,要做的事情#比较,运算符==检查两个操作数的...
  • if判断判断的定义如果条件满足,就做一件事;条件不满足,就做另一件事;...但应注意,在python开发中,tab和空格不能混用!判断年龄示例:# 判断是否成年,成年则可以进网吧age = 19if age>=18:pr...
  • for循环和while循环,两者的相同点在于都循环做一件重复的事情;不同点在于,for循环是在序列穷尽时停止,while循环是在条件成立时停止。11.1 while语句 while循环通过判断条件,确认是否执行语句。条件为True时...
  • python3两个while循环不能套在一起,否则会产生内循环参杂在外循环,造成循环次数不够(循环跳跃)。 这可能是两个while嵌套在一起差生了异步。 - 可以用for x in range(min, max)和while else循环参起来,或者...
  • 有个需求:有三列信息文本,第一列IP,第二列用途,第三列备注,需要登录每个IP执行命令,符合执行命令结果的,打印出文本中这...主要耽搁在while循环里面嵌套了ssh。 首先说说for跟while读行的区别,如都只有一列...
  • 循环嵌套

    2019-10-16 10:50:30
    对于while语句而言,如果不满足条件,则不能进入循环 do…while循环 do…while循环while循环类似,不同的是,do…while循环至少会执行一次 for循环 检测布尔表达式的值.如果为true,循环体被执行;如果为false,循环终止,...
  • 各case的常量不能重复2.表达式的取值:基本数据类型:byte short char int引用数据类型:String(JDK1.7及以上) 枚举3.switch的穿透性。如果进入某个case块了,但是该块中没有break,那么他将穿透进入下一个case,知道遇到...
  • Math类和Random类相比,需要导入包 Math.random() 产生随机数 [0,1) 随机小数 随机小数 [min,max)某个范围内的随机小数 Math.random()(max-min)+min [min,max] nax的小数也获取到 Math.random()(max-min+1)+...
  • 循环第一遍是正常的 然后就报错【从数据类型 varchar 转换为 numeric 时出错】下面 ResultSetMetaData reMetaData = resultSet.getMetaData(); //数据集的列数 int cot(); for (int i = 1...
  • 若要处理多个对象主函数循环内可以利用 switch case ,if else,for等语句进行枚举查询,切可使用while(1)嵌套While或其他死循环,从而令程序陷入死循环。可以使用状态机,定时器,组合逻辑等判断条件来跳出当前状态...
  • 把一个递归调用转换为while循环实现js递归优化递归优化递归在我们平时撸码中会经常用到,不过可能很多人知道递归的弊端,就是会导致调用栈越来越深。如果没有节制的使用递归可能会导致调用栈溢出。那什么是递归呢...
  • rangefor循环与range函数的结合使用嵌套for循环2.while循环的语法及应用while循环的语法及用法while的示例代码 for循环 循环的定义:重复做某件事情;执行循环存在触发条件,终止循环存在终止条件,没有终止条件的话...
  • 虽然查找到的大部分回答都是“循环结构forwhile进行互换”,但是感觉有个地方的确无法互换。 下面是用for写的,能够输出4组数字: 1 1 1 2 2 1 2 2 ``` #include void main() { int a,b; ...
  • 从控制台输入一个整数,如果输入的...如果不重置Scanner对象sc将会总在while循环 try catch,原因是Scanner对象发生异常后就不能再被使用,所以一直报异常,编程了死循环.如: publicstaticvoidmain(String[]arg...

空空如也

空空如也

1 2 3 4 5 ... 15
收藏数 292
精华内容 116
关键字:

while循环能不能嵌套while