首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

零基础学习 Python 之 while 循环语句

同时写这个教程也算是对自己之前所学知识一个巩固和提高,喜欢朋友们可以点个关注,有问题欢迎随时和我交流。本文所有的代码编写均是Python3 版本。...循环内部打印 cnt 值,然后使用 cnt += 1 对 cnt 进行自增操作,返回到循环开始位置,继续比较 cnt 和 5 大小关系。...使用 break 跳出循环 如果你想让循环某一条件下停止,但是不确定在哪次循环跳出,可以无限循环中声明 break 语句,其含义就是要在这个地方终端循环,跳出循环体。...循环东西就这么多,至于它大用处我会在之后文章中写,敬请期待。 写在最后 最后感谢你能看到这里,希望东西能够让你有到收获,但是还是希望文章里插入代码,你们能自己动手试一下,都很简单。...原创不易,每一个字,每一个标点都是自己手敲,所以希望大家能多给点支持,该关注关注,该点赞点赞,该转发转发,有什么问题欢迎在后台联系,也可以公众号找到我微信加我。

43110

Python 版 LeetCode 刷题笔记 #3 无重复字符最长子串

思路 以 "abcabcbb" 为例,最初思路是检测重复字母出现,比如当字母 "a" 第二次出现时,就把 "abc" 分离出去作为第一个子串,然后继续分离出 "abc"、"b" 和 "b"。...temp=[] # 通过 break 跳出对后续字符遍历,开启新 for i 循环 break...但试了下提升并不多,可见问题关键还是在这两个嵌套 for 循环上。...惊呆了。。运行时间从 4332 ms 降到了 48ms !这是近百倍提升么?...又翻了些其它答案之后,还潜在提升点在于目前我们是通过一个列表存储子串字符来实现,这个可以通过记录起始两个位置坐标的变量来取代,但可能比较绕,就没有继续探究了。

69120
您找到你想要的搜索结果了吗?
是的
没有找到

Python 版 LeetCode 刷题笔记 #2 两数相加

body.next = temp # 为了让结果每一位相连,将下一位赋值给 body,以循环继续获取下下位 body = body.next...同样代码不同分区提交,数据差异还是有的:执行时间估计和服务器所在地有关吧,目前香港,英文版执行时反倒更快些;但这个击败用户比例,心痛,看来还要继续优化啊。...优化 结合着推荐答案与评论区,尝试了下在刚刚思路上优化,代码中两个 while 循环遍历输入两个链表,最后一个 for 循环来来生成结果链表,而这三个循环过程实际上可以做到逐位对应,也就是遍历过程可以放到一起...但如果这么来,之前代码就要重写,因为是利用字符串来对链表进行逆转、计算。...结论 第二题,难度 LeetCode 中是中等难度,确实一上来这个定义 ListNode 给了一个下马威,只能尝试着先琢磨明白这个类、搞明白如何返回相应格式结果,之后便可以回归到我们可以正常设计算法上来了

1.7K20

一篇带你参透 Python 循环

引言 Python 语法中有两类循环 while 循环 for 循环 并介绍关键字 continue 和 break 循环作用。...如果不希望末尾增加换行,可以 print 函数输出内容后面增加 , end="" 其中 "" 中间可以指定 print 函数输出内容之后继续希望显示内容 语法格式如下: # 向控制台输出内容结束之后...break ,退出本层循环,不再执行后续代码 continue ,终止本次循环,不执行后续代码,再次进行循环条件判断 break 和 continue 只针对 当前所在循环 有效 break 循环过程中...,如果 某一个条件满足后,不 再希望 循环继续执行,可以使用 break 退出循环 i = 0 while i < 10: # break 某一条件满足时,退出循环,不再执行后续重复代码...continue 循环过程中,如果 某一个条件满足后,不 希望 执行循环代码,但是又不希望退出循环,可以使用 continue 也就是:整个循环中,只有某些条件,不需要执行循环代码,而其他条件都需要执行

1.1K10

frustum-pointnet代码调试bug集锦与解决方法总结

由于源代码python2写,所以如果你是python2的话,几乎不怎么需要调试。但如果你跟我一样,python3的话,就要花点功夫了。...笔者查阅了大量博客教程,发现这些博客都是你抄抄你,千篇一律很不走心,都在讲需要先安装VTK,还要使用cmake进行编译,耗时长,而且操作复杂;笔者走了不少弯路之后发现,现在mayavi版本其实已经做得很完备了...安装完之后代码test_drawline.py进行测试。...一直纠结是不是编码问题,最后找到原因,原来是pickle造成。 先简单说一下pickle这个包,用来把各种图片、表格等数据转换成专门pickle格式,供代码使用。...作者提供KITTI数据库pickle文件,是python2转换得到,带编码是ascii,我们python3下进行调用pickle.load()的话,默认编码方式是UTF-8,所以会出现编码问题报错

98420

话说 wait、notify 、 notifyAll

notify() 唤醒一个wait()线程,当notify所在代码锁释放之后,wait线程开始抢锁,嗯..........,Object类里注释写是唤醒wait线程是任意(arbitrary) ,但是可以由具体实现自行裁决,看hotspot实现好像是双向链表,notify时候是从head拿出一个唤醒,所以我称之为有序...这个故事里,小明有点儿不地道了,他还没准备放筷子就通知二月鸟可以吃饭了,害二月鸟等了半天,我们不能学小明,我们平时写代码,一般业务执行完了,代码最后执行notify,执行完notify之后线程马上就会释放锁...(循环双向链表) // 如果你不知道什么是循环双向链表 给你画出来 // _WaitSet是头元素 其实玩儿过链表的人 这里应该都很清楚 // 这里所谓头 不是真正头 只是一个相对概念...waiter顺序 到了EntryList 变成了 倒叙 这也是为什么 测试时候,多个wait 执行完notifyAll时候 是倒着获取到锁 ,还是那句话 JVM没有强制规定规则,所以不能以这个为依据进行业务编写

98410

Python 版 LeetCode 刷题笔记 #5 无重复字符最长子串(上)

经过好几番尝试后,暴力法完成并提交了一版代码,测试结果超出时间限制。根据反馈测试用例,专门针对特例做了下处理,才勉强通过测试。...Input: "cbbd" Output: "bb" 思路 最初是觉得暴力、遍历循环这样解决肯定是不可取,但是琢磨半天也没能想到好方法,只好就按照回文规则来逐个暴力尝试了。...自己代码中尝试对这个字符串进行处理,是可以拿到正确结果,只是时间久了些。...为了让代码通过,专门对这种全重复字符字符串进行额外处理: # 将该字符串转化为集合 c_set = set(s) # 如果集合中只有一个元素,直接返回这个字符串 if len(c_set)==1:...意料之中,试了几个其它思路后,投降,开始翻看评论区中 Manacher 算法。但直到现在也没能完全吃透。

44320

第四章3:while 循环

编写一个while循环 就像for循环一样,while循环以关键字“ while”开始。之后,就像我们编写一个if语句一样,写上一个相关条件代码。...最后一行代码中,我们将变量health值每次循环运行一次就会减1,直到变量health值接近于零。...一般经验法则是涉及到计数for循环,涉及到条件判断则用while循环。 ---- 注意:pass、break和continue语句对于while循环也是同样工作原理。...---- 无限循环 之前章节中,曾提到无限循环是不好。无限循环将使代码持续运行直到程序中断,或计算机关机或时间停止为止。知道了这些后,我们创建项目时,请一定要避免创建无限循环代码块。...撰写循环代码时候,我们一定要确保有退出循环方法,无论是通过break中断所有循环,还是通过continue中断当前条件而运行下一条件循环

1.5K20

Python 版 LeetCode 刷题笔记 #8 字符串转换整数 (atoi)

今天趁着有兴致多刷一道,中等难度题,这种题考虑情况比较多,写完之后只能靠提交了看测试结果,针对返回特殊测试用例来完善代码。大概提交了四次,代码通过了。...接下来转化规则如下: 如果第一个非空字符为正或者负号时,则将该符号与之后面尽可能多连续数字字符组合起来,形成一个有符号整数。...假如第一个非空字符是数字,则直接将其与之后连续数字字符组合起来,形成一个整数。 该字符串在有效整数部分之后也可能会存在多余字符,那么这些字符可以被忽略,它们对函数不应该造成影响。...我们现在要做就是搞懂这一行代码实现过程,看其中有什么可以学习点。看到 re 这是直接用了正则表达式了。str.lstrip() 这个很多字符串入门教程里会提到,去除左侧空白符。...观摩一行代码答案时,也是有 str.lstrip() 这个用法可以拿来借鉴,直接去除左侧空白字符,同时 * 对列表解包也有了一定认识,以及最后 max() 和 min() 嵌套之后也可以尝试了

95920

【python系统学习08】for循环知识点合集

, i)Peace && Love迭代列表时获取索引continue 跳过本次循环break 跳出循环思考题创建一个从1到100整数列表九九乘法表 for简介 【循环】:就是依照某些我们编写特定规则...那么如果想迭代字典时,有个变量存放列表中各项所对应偏移量(索引)呢? 通过range函数搭配,我们不仅可以迭代整数,还能迭代列表索引。 于是试了下边写法,但是他报错了。...for循环else 可以看打印结果得知,满足i==3条件之后,直接跳出了当次循环没有打印3这个数字。...循环else') # 打印结果如下: # break跳过循环 0 # break跳过循环 1 # break跳过循环 2 可以看打印结果得知,满足i==3条件之后,直接跳出了循环。...for循环后边else都没执行。所以只打印了0、1、2。 思考题 创建一个从1到100整数列表 for循环打印1-100 九九乘法表 for循环打印一个九九乘法表。

1.3K60

从零开始学习PYTHON3讲义(七)条件分支和哥德巴赫猜想

Python中,最简单条件分支是这个样子(伪代码): if 条件: 满足条件时执行分支 条件不满足时,或者条件满足、执行完分支之后,会继续从这里开始执行 真实代码来看个例子: #当a值大于...一个if分支结构中,elif子句可以有很多个,这样就可以用于对应很多种不同分支条件。但是最初if和最后else只能有一个。...通常在循环语句块中,我们常用到两种特殊处理: 中断循环继续,退出循环,从循环语句块之后第一条语句继续执行程序后续部分。这种情况下,使用break语句。...当然仍有几点需要注意: while True:语句,进入循环条件和继续循环条件是True,这是一个立即数,也是常数。这使得循环成为一个永远不停止循环。...注意i += 1这是我们在前面演示时候,都放到循环最后部分循环条件变量,当然这里i已经不是循环条件变量了,但仍然对于退出循环起着很关键作用。

86620

Python

因为平时写 js 是 tab 替换为两个空格, python 看教程一般是四个空格缩进,就单独对 python 进行四个空格缩进设置了。 用户设置中添加如下代码: ......所以, Python3 中不能再使用”thread” 模块。为了兼容性,Python3 将 thread 重命名为 “_thread”。...没错,最后诞生就叫作小爱了。 这种东西,凭自己能力和惰性肯定是要先找找有没有现成轮子可以使用啦。...这是后,机器人就可以对收到 qq 消息进行爬去检测,并进行自定义回复了。 挂载至服务器 以上通过编写逻辑代码,已经基本可以完成自定义消息回复功能。...,指定编码格式 最后文件所在目录,执行: nohup python start_webhook.py & // nohup 与 & 连用使得脚本在后台执行 就此结束,只要在本地 git 提交修改小爱代码

88210

python+shell 备份 CSDN 博客文章,CSDN博客备份工具

找到了一个同为 CSDN 博主写 python 脚本工具,尝试了一下,发现因为网站改版原因,原先脚本已经不能运行了。 其实,这是想要一揽子解决问题脚本通病,当一处变化,整个脚本就要作废。...所以,决定自己来解决这个问题,并且这个解决问题方案,不会因为官方改版就不能使用,只要稍微修改一下代码,即可。 分析备份文章步骤 将一个问题,拆成若干个小问题,即可轻松解决问题。...而我博文有 14 页,所以,很容易猜测到我博客问所有列表。 循环一个 14 数字即可。你有多少,就循环多少咯。然后我们分析一下源码: ?...id=$1' -H 'Cookie: __这里代码删除掉了。...将 json 数据读取,并保存成 markdown 格式博文 通过两步,我们就已经拿到了数据了,下面要进行就是数据处理,这个 shell 就不方便了,我们继续 python 脚本来解决问题。

50860

解决Mac无法成功安装pygame,无法更改窗口背景颜色,不显示飞船图像问题

/pygame 命令无法安装pygame,或者通过pip3 install pygame 命令成功安装后,在编写《外星人入侵》代码中调用 import pygame 模块运行程序,会发现python应用图标一直程序坞中跳动或者不动...虽然终端中用 pip3 install pygame 命令可以成功安装pygame, 并且可以成功运行pygame窗口。但是,接下来编写过程中,会出现新问题。...这里我们用到是anaconda(就当是一个很全python软件,安装好后可以省去你安装其他库步骤,其实刚开始也是拒绝,因为是英文)。...(原谅在这里没办法将卸载方法具体写出来,因为最后实在删不了旧版本pip3选择了重置Mac,卸载步骤可以自行搜索。)...最后如果你sublime作为文本编辑器,需要重新配置下路径,python路径不再是书上了,需要通过type -a python3命令重新查看(复制第一个路径)。

4.1K00

python之day1

初学python会有学python2还是python3困惑,因为现在公司实际环境下大部分还是2.7编写代码,python3.X又向下不兼容2.X,认为作为初学者更应该从python3着手:...python3和python2区别不是很大,只有某些语法、某些库名不一样而已; python2官方只支持到2020年,且不会有大版本更新; 官方所有标准库只python3中更新; 所以还是忘掉...、数字或下划线任意组合; 2、 变量名一个字符不能是数字; 3、 关键字不能声明为变量; 4、 约定俗成:变量名有含义英文单词,不要用拼音,单词之间_隔开,gf_of_oldboy,每个单词首字母大写...; Python中没有常量概念,但约定俗成变量全是大写表示常量,如:PIE = “chang liang”(注:可以更改) 字符编码与二进制 Python解释器加载.py文件中代码时,会对内容进行编码...总结:continue表示结束本次循环,不执行continue以下代码,但继续循环             break结束整个循环,不执行break以下代码,并跳出循环继续执行循环代码

45920

Python 基础语法五-控制流

开始进行控制流之前,先要学习一下如何将程序保存到文件中。在前面的学习过程中所有的代码都是命令行环境中运行,输入一行代码 python 解释器输出一个结果。...第三行是一个字符串,表示模块文档注释,任何模块代码一个字符串都被视为模块文档注释。 第五行是该文件真正代码行,程序运行过程中改行输出字符串Hello World!。...有循环就要有退出,再循环中处理条件不满足是退出以外是否还有其他方式可以退出循环呢,这是当然,我们还可以通过 break 语句或 continue 语句来退出循环。... while 循环计算了100以内整数和,我们是否可以 for 循环来实现相同内容,答案是肯定,来看一下代码 #!...当使用 continue 语句时仅仅跳过了x = 10时情况,for 循环继续执行后面的内容。

61240

Python-3.12 告别 GIL 锁 & 性能原地飞升!

随着 Python 之父回归,Python 也是越来越看重性能;GIL 这个老大难问题也提上了日程。从最近讨论我们可以看到 GIL Python-3.12 之后将会是一个可选项。...使用 C/C+ 编写处理逻辑,在这个里面就完全没有 GIL 限制了,想怎么玩就怎么玩,非常自由; 最后只能由 Python 去调用相应处理逻辑就行。这个对动手能力要求就比较高。 2....用了一个内部版本测试了下,性能可以说是原地飞升!!!Python 再也不是那个多线程不行小老弟了。...---- 最后 私信回复 “disable-gil” 获取源代码 !!! 都到这里了,是时候图穷匕见了!这人比较 real 就直说了,想涨粉帮忙点下关注!技术文章质量还可以,关注应该不亏。...“在看” + “分享” + “点赞” + “收藏” 也是继续写下去动力;再次感谢!!!

8.2K41

滚雪球学Java(15):节约时间,提升效率:掌握JavaSE-while循环语句技巧与窍门

while循环中,条件被检查,如果条件为true,则代码块将继续执行。如果条件为false,则代码块将被跳过。...代码解析:  根据给定代码,可以分析出以下几点:  根据上述代码,可以看出这是一个单元测试方法,用来测试sumNumbers方法准确性。...while循环中,条件被检查,如果条件为true,则代码块将继续执行。如果条件为false,则代码块将被跳过。...最后,我们编写了两个基本示例来演示while循环使用,然后编写了测试用例来测试这些示例正确性。...在编写代码过程中,我们可以编写测试用例来验证代码正确性。通过对while循环学习和实践,我们可以更好地理解和运用这个循环语句,提高我们编程能力。

9821

日拱一卒,一起来上伯克利实验课,让你Python溜起来

包括单元测试以及框架代码等等。我们下载解压之后,使用命令行进入文件夹。之后就可以根据题目当中命令提示进行测试了。...核心注意点只有两个,第一个and计算时,如果结果都为True,会返回最后一个为True结果,比如:1 and 3 and 6 and 10 and 15最后结果是15....10,相当于去掉最后一位,继续判断最后两位是否是88,直到n小于10为止。...命令行中答题,if语句,交互命令:python3 ok -q what_if -u 下列函数代码lab01.py中,当你被难住时候,可以使用命令python3 -i lab01.py进行实验。...这里提供一下绘制出情况,首先是guess_linear: 然后是guess_binary: 答案是二分法最多需要8次,而线性猜测最多需要100次,这是一个非常巨大差距,侧面体现除了算法重要

60930

Python探索红楼梦里关系

“ 拜读过徐麟兄(公众号“数据森麟”)发布《“水泊梁山“互联网有限公司一百单八将内部社交网络》,真的是引人深思,辗转反侧啊(已经不知道什么词来形容了 )。...01.准备 红楼TXT版本电子书一本 红楼人物小全一份(之所以叫小全,是因为只包括宝玉和十二钗) 安装好Python3并且安装pandas和pycharts库 找个夜黑风高,无人打扰夜晚(毕竟这是个技术活...03.产生相互关系 使用Gephi,突然发现这真的是一个强大工具啊,感觉以后数据可视化中会大展拳脚(就是需要后面好好研究下 ? )。...这里还是调试了很久,后面有机会写一下这个软件相关学习总结吧,这里直接上图了。 ? ? 导出之后能看更加清楚 ? 妥妥“铁”三角啊 ? ,然后凤姐、湘云等在外围插科打诨 ? 。 04....最后最后,撸完代码,又有重新再看一遍红楼梦冲动了,冲鸭!

70620
领券