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

挑战30天学完Python:Day10 循环

本系列为Python基础学习,原稿来源于github英文项目,大奇主要是对其本地化翻译、逐条验证和补充,想通过30天完成正儿八经的系统化实践。此系列适合零基础同学,会简单用但又没有系统学习的使用者。...在符合给定的条件之内,它会一直重复执行语句块。当条件为false时,代码将跳出循环。...范围函数 range 函数 range() 按给参数值返回一个数字列表。函数 range(start, end, step) 有三个参数:开始、结束和增数。默认情况下,它从0开始,增量为1。...到100进行迭代,并输出所有数字的和。...所有数据相加总和 = 5050 使用for循环从0到100进行迭代,并输出所有偶数和所有奇数的和。 所有偶数的和是2550。所有奇数的总和是2500。 CONGRATULATIONS !

21610

Python 循环结构

判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。 0,None,空字符串,空列表等均为False 当判断条件假 false 时,循环结束。...break while+continue #2、使用while循环打印出0-10但是不打印4 #continue作用:结束本次循环,继续下次循环 num1 = 0 while num1 <= 10:...#4、死循环 while 1: print('I love python') 全局标志 相当于break的作用,直接赋值改变bool值,使用起来更加灵活 flag = True while...循环范围顾头不顾尾 range( )常用的三种结构: range(stop): range(start,stop): range(start,stop,step): 单层循环 实例如下: #1...)举例:循环打印出0-5 for i in range(0,6): print(i) #结果 0 1 2 3 4 5 实例如下: #range(start,stop,step)举例

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

    如何用Shell命令结合 正则表达式 统计文本中的ip地址数量

    通过 IP 地址,数据包可以在全球范围的互联网中找到确切的目的地。...我们知道,点分十进制形式的 ip 地址由三个点号分隔的四个十进制数组成,其中每个十进制的有效范围是 0~255。 经过搜索学习,笔者将命令改为 grep -oP '\b(([01]?\d\d?...相比基本正则表达式,PCRE 提供了更丰富的功能和更灵活的匹配规则。 '\b(([01]?\d\d?|2[0-4]\d|25[0-5])\.){3}([01]?\d\d?...|2[0-4]\d|25[0-5]): 三种可能的 IPv4 段值的组合,确保值在 0 到 255 之间。具体解释如下: \.: 匹配点号,作为十进制数之间的分隔符。 [01]?\d\d?...|2[0-4]\d|25[0-5]): 类似于前面的子模式,用于匹配 IPv4 地址的最后一段,确保其值在 0 到 255 之间。 再进行测试,输出结果是 6,符合预期。

    18310

    SQL刷题

    string函数 # mysql 字符串函数各种复习 -- CONCAT(str1, str2):字符连接函数 -- UPPER(str):将字符串改为大写字母 -- LOWER(str):将字符串改为小写字母...[a-z] 字符范围。匹配指定范围内的任意字符。例如,“[a-z]”可以匹配“a”到“z”范围内的任意小写字母字符。 [^a-z] 负值字符范围。匹配任何不在指定范围内的任意字符。...\cx 匹配由x指明的控制字符。例如,\cM匹配一个Control-M或回车符。x的值必须为A-Z或a-z之一。否则,将c视为一个原义的“c”字符。 \d 匹配一个数字字符。等价于[0-9]。...如果\nm之前至少有n个获取,则n为一个后跟文字m的向后引用。如果前面的条件都不满足,若n和m均为八进制数字(0-7),则\nm将匹配八进制转义值nm。...\nml 如果n为八进制数字(0-3),且m和l均为八进制数字(0-7),则匹配八进制转义值nml。 \un 匹配n,其中n是一个用四个十六进制数字表示的Unicode字符。

    64761

    正则与python的re模块

    x 的值必须为 A-Z 或 a-z 之一。否则,将 c 视为一个原义的 'c' 字符。 \d 匹配一个数字字符。等价于 [0-9]。 \D 匹配一个非数字字符。等价于 [^0-9]。...否则,如果n为八进制数字 (0-7),则n 为一个八进制转义值。 \nm 标识一个八进制转义值或一个后向引用。...如果 \nm 之前至少有 n 个获取,则 n 为一个后跟文字m的后向引用。如果前面的条件都不满足,若 n 和m 均为八进制数字 (0-7),则 \nm 将匹配八进制转义值nm。...\nml 如果 n 为八进制数字 (0-3),且 m 和 l 均为八进制数字 (0-7),则匹配八进制转义值nml。 \un 匹配 n,其中 n 是一个用四个十六进制数字表示的 Unicode 字符。...如果在模式中使用捕获括号,则然后也作为结果列表的一部分返回的文本模式中的所有组。如果maxsplit不为零,顶多maxsplit分裂发生,并且该字符串的其余部分将作为列表的最后一个元素返回。

    88820

    正则表达式语法速查

    \cx 匹配由x指明的控制字符。例如,\cM匹配一个Control-M或回车符。x的值必须为A-Z或a-z之一。否则,将c视为一个原义的“c"字符。 \d 匹配一个数字字符。等价于[0-9]。...否则,如果n为八进制数字(0-7),则n为一个八进制转义值。 \nm 标识一个八进制转义值或一个向后引用。如果\nm之前至少有nm个获得子表达式,则nm为向后引用。...如果\nm之前至少有n个获取,则n为一个后跟文字m的向后引用。如果前面的条件都不满足,若n和m均为八进制数字(0-7),则\nm将匹配八进制转义值nm。...\nml 如果n为八进制数字(0-3),且m和l均为八进制数字(0-7),则匹配八进制转义值nml。 \un 匹配n,其中n是一个用四个十六进制数字表示的Unicode字符。...*\n).*$ (由数字/大写字母/小写字母/标点符号组成,四种都必有,8位以上) 十六进制值 /^#?

    52310

    如何使用正则表达式

    可以找出所有的字母列表组成一个数组,[A,B,C...Z] 2. 把字符串转成字符的数组,进行遍历 3....\cx 匹配由x指明的控制字符。例如,\cM匹配一个Control-M或回车符。x的值必须为A-Z或a-z之一。否则,将c视为一个原义的“c”字符。 \d 匹配一个数字字符。等价于[0-9]。...否则,如果n为八进制数字(0-7),则n为一个八进制转义值。 \nm 标识一个八进制转义值或一个向后引用。如果\nm之前至少有nm个获得子表达式,则nm为向后引用。...如果\nm之前至少有n个获取,则n为一个后跟文字m的向后引用。如果前面的条件都不满足,若n和m均为八进制数字(0-7),则\nm将匹配八进制转义值nm。...\nml 如果n为八进制数字(0-3),且m和l均为八进制数字(0-7),则匹配八进制转义值nml。 \un 匹配n,其中n是一个用四个十六进制数字表示的Unicode字符。

    1K20

    js中的正则表达式(2)

    既可以匹配http,也可以匹配https */ 小结:问题: +,与 *匹配的字符个数是没有上限的,无法为它们将匹配的字符个数设定一个最大的值 +与 *, ?...至少匹配零个或者一个字符,无法为他们将匹配的字符个数设定一个最小值 如果只是使用 +和 *,无法把他们将匹配的字符个数设定为一个精确的数字 {}:匹配重复次数,把数值写在双大括号里面,用于限定次数 示例...,是由众多个子表单时嵌套构成,4个子表达式 ((\d{1,2})|(1\d{2})|(2[0-4]\d)|(25[0-5])),从左边到右边,(\d{1,2})表示匹配任意一个1位或者两位数字(0-99...)方法中的第二个参数可以用函数的方式传入,而不只是一个字符串值,在这种情况下,原始字符串中每出现一项匹配的子字符串,都会执行一次该函数,并传入所匹配的子字符串,会使用函数的返回值来替换原子字符串 例如:...(value){ // 计数器加一 count = count+1; // 将传入的值结合计数器当前的值返回至目标字符串,替换掉匹配的子字符串 return

    2.8K30

    一篇文章,轻松入门Python中的正则表达式

    :从字符串的起始位置匹配一个模式,如果无法匹配成功,则match()就返回none fullmatch(...):是match函数的完全匹配(从字符串开头到结尾)版本 search(...)...:分割字符串,返回列表形式 findall(...):在字符串中找到正则表达式所匹配的所有子串,并返回一个列表形式,如果没有找到匹配的,则返回空列表。 finditer(...)...代码中更形象: import re lineOne = "7704194" lineTwo = "My UID in Tencent Community is:7704194" # 使用match搜索纯数字字符串...代表可以不存在这一项,后两位为两位0-9的数字。...效率问题 使用正则表达式,很大程度是为了精简代码,但是存在一下问题: 代码可读性降低:普通的匹配数字还好,但是如果都像IPv4这样的,一定程度可读性就降低了,维护成本高(虽然后期一般不回去改) 解析时间长

    1.5K60

    常用的正则表达式(Regular Expression)大全

    下表是在PCRE中元字符及其在正则表达式上下文中的行为的一个完整列表: 字符 描述 \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个向后引用、或一个八进制转义符。例如,“n”匹配字符“n”。...[a-z] 字符范围。匹配指定范围内的任意字符。例如,“[a-z]”可以匹配“a”到“z”范围内的任意小写字母字符。 [^a-z] 负值字符范围。匹配任何不在指定范围内的任意字符。...\cx 匹配由x指明的控制字符。例如,\cM匹配一个Control-M或回车符。x的值必须为A-Z或a-z之一。否则,将c视为一个原义的“c”字符。 \d 匹配一个数字字符。等价于[0-9]。...如果\nm之前至少有n个获取,则n为一个后跟文字m的向后引用。如果前面的条件都不满足,若n和m均为八进制数字(0-7),则\nm将匹配八进制转义值nm。...\nml 如果n为八进制数字(0-3),且m和l均为八进制数字(0-7),则匹配八进制转义值nml。 \un 匹配n,其中n是一个用四个十六进制数字表示的Unicode字符。

    48110

    grep正则获取特定内容之零宽断言

    [a-z] 字符范围。匹配指定范围内的任意字符。例如,“[a-z]”可以匹配“a”到“z”范围内的任意小写字母字符。 [^a-z] 负值字符范围。匹配任何不在指定范围内的任意字符。...\cx 匹配由x指明的控制字符。例如,\cM匹配一个Control-M或回车符。x的值必须为A-Z或a-z之一。否则,将c视为一个原义的“c”字符。 \d 匹配一个数字字符。等价于[0-9]。...否则,如果n为八进制数字(0-7),则n*为一个八进制转义值。 \nm 标识一个八进制转义值或一个向后引用。如果*nm之前至少有nm个获得子表达式,则nm为向后引用。...如果\nm之前至少有n个获取,则n为一个后跟文字m的向后引用。如果前面的条件都不满足,若n和m均为八进制数字(0-7),则\nm将匹配八进制转义值nm*。...\nml 如果n为八进制数字(0-3),且m和l均为八进制数字(0-7),则匹配八进制转义值nml。 \un 匹配n,其中n是一个用四个十六进制数字表示的Unicode字符。

    1.6K20

    day11- 循环语句

    Python循环顾名思义就是重复执行某一操作,Python中循环包括while循环和for循环,while循环是通过条件判断来指定循环的范围,for循环采用遍历的形式指定循环范围。...5次 4、for循环中的range函数 我们遍历数字序列的时候,会使用到python的内置函数range函数,并且他也会可以帮助我们指定循环次数 遵循左开右闭 range(start, stop, step...每个相邻整数之间的间隔 range函数返回的是一个对象,不是具体的值, 如果我们想要取出值,可以与for循环结合使用: for i in range(10): # [0, 1, 2, 3, 4, 5,...# 1 3 5 7 9 取10以内的奇数 range函数还可以快速生成列表 my_list = list(range(5)) print(my_list) # range(5)生成一个从0...到4的整数序列,list()函数将该序列转换为列表 5、while循环嵌套使用 在实际的使用过程中,我们还可以使用while循环嵌套使用,指的是一个while循环体外部再有一个循环体 比如我们每天早中晚说三次

    11210

    使用Python验证常见的50个正则表达式

    这里要注意两个函数的使用: re.compile用于编译正则表达式,生成一个正则表达式( Pattern )对象; .findall用于在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的...数字 验证数字:^[0-9]*$ 验证n位的数字:^\d{n}$ 验证至少n位数字:^\d{n,}$ 验证m-n位的数字:^\d{m,n}$ 验证零和非零开头的数字:^(0|[1-9][0-9]*)$...“er\B”能匹配“verb”中的“er”,但不能匹配“never”中的“er”。 \cx 匹配由x指明的控制字符。x的值必须为A-Z或a-z之一。否则,将c视为一个原义的“c”字符。...其中num是从1开始的十进制正整数,其上限可能是9、31、99,甚至无限。例如:“(.)\1”匹配两个连续的相同字符。 \n 标识一个八进制转义值或一个向后引用。...如果\nm之前至少有n个获取,则n为一个后跟文字m的向后引用。如果前面的条件都不满足,若n和m均为八进制数字(0-7),则\nm将匹配八进制转义值nm。

    1.4K30

    使用Python验证常见的50个正则表达式

    这里要注意两个函数的使用: re.compile用于编译正则表达式,生成一个正则表达式( Pattern )对象; .findall用于在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的...验证数字:^[0-9]*$ 验证n位的数字:^\d{n}$ 验证至少n位数字:^\d{n,}$ 验证m-n位的数字:^\d{m,n}$ 验证零和非零开头的数字:^(0|[1-9][0-9]*)$ 验证有两位小数的正实数...“er\B”能匹配“verb”中的“er”,但不能匹配“never”中的“er”。 \cx:匹配由x指明的控制字符。x的值必须为A-Z或a-z之一。否则,将c视为一个原义的“c”字符。...其中num是从1开始的十进制正整数,其上限可能是9、31、99,甚至无限。例如:“(.)\1”匹配两个连续的相同字符。 \n:标识一个八进制转义值或一个向后引用。...如果\nm之前至少有n个获取,则n为一个后跟文字m的向后引用。如果前面的条件都不满足,若n和m均为八进制数字(0-7),则\nm将匹配八进制转义值nm。

    1.5K20

    【Python】使用Python验证常见的50个正则表达式

    这里要注意两个函数的使用: re.compile用于编译正则表达式,生成一个正则表达式( Pattern )对象; .findall用于在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的...数字 验证数字:^[0-9]*$ 验证n位的数字:^\d{n}$ 验证至少n位数字:^\d{n,}$ 验证m-n位的数字:^\d{m,n}$ 验证零和非零开头的数字:^(0|[1-9][0-9]*)$...“er\B”能匹配“verb”中的“er”,但不能匹配“never”中的“er”。 \cx 匹配由x指明的控制字符。x的值必须为A-Z或a-z之一。否则,将c视为一个原义的“c”字符。...其中num是从1开始的十进制正整数,其上限可能是9、31、99,甚至无限。例如:“(.)\1”匹配两个连续的相同字符。 \n 标识一个八进制转义值或一个向后引用。...如果\nm之前至少有n个获取,则n为一个后跟文字m的向后引用。如果前面的条件都不满足,若n和m均为八进制数字(0-7),则\nm将匹配八进制转义值nm。

    1.8K30

    使用Python验证常见的50个正则表达式

    这里要注意两个函数的使用: re.compile用于编译正则表达式,生成一个正则表达式( Pattern )对象; .findall用于在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的...数字 验证数字:^[0-9]*$ 验证n位的数字:^\d{n}$ 验证至少n位数字:^\d{n,}$ 验证m-n位的数字:^\d{m,n}$ 验证零和非零开头的数字:^(0|[1-9][0-9]*)$...“er\B”能匹配“verb”中的“er”,但不能匹配“never”中的“er”。 \cx 匹配由x指明的控制字符。x的值必须为A-Z或a-z之一。否则,将c视为一个原义的“c”字符。...其中num是从1开始的十进制正整数,其上限可能是9、31、99,甚至无限。例如:“(.)\1”匹配两个连续的相同字符。 \n 标识一个八进制转义值或一个向后引用。...如果\nm之前至少有n个获取,则n为一个后跟文字m的向后引用。如果前面的条件都不满足,若n和m均为八进制数字(0-7),则\nm将匹配八进制转义值nm。

    2K10

    使用Python验证常见的50个正则表达式

    这里要注意两个函数的使用: re.compile用于编译正则表达式,生成一个正则表达式( Pattern )对象; .findall用于在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的...数字 验证数字:^[0-9]*$ 验证n位的数字:^\d{n}$ 验证至少n位数字:^\d{n,}$ 验证m-n位的数字:^\d{m,n}$ 验证零和非零开头的数字:^(0|[1-9][0-9]*)$...“er\B”能匹配“verb”中的“er”,但不能匹配“never”中的“er”。 \cx 匹配由x指明的控制字符。x的值必须为A-Z或a-z之一。否则,将c视为一个原义的“c”字符。...其中num是从1开始的十进制正整数,其上限可能是9、31、99,甚至无限。例如:“(.)\1”匹配两个连续的相同字符。 \n 标识一个八进制转义值或一个向后引用。...如果\nm之前至少有n个获取,则n为一个后跟文字m的向后引用。如果前面的条件都不满足,若n和m均为八进制数字(0-7),则\nm将匹配八进制转义值nm。

    1.5K10

    JavaScript – 正则表达式

    [a-z] 字符范围。匹配指定范围内的任意字符。例如,“[a-z]”可以匹配“a”到“z”范围内的任意小写字母字符。 [^a-z] 负值字符范围。匹配任何不在指定范围内的任意字符。...\cx 匹配由x指明的控制字符。例如,\cM匹配一个Control-M或回车符。x的值必须为A-Z或a-z之一。否则,将c视为一个原义的“c”字符。 \d 匹配一个数字字符。等价于[0-9]。...否则,如果n为八进制数字(0-7),则n为一个八进制转义值。 \nm 标识一个八进制转义值或一个向后引用。如果\nm之前至少有nm个获得子表达式,则nm为向后引用。...如果\nm之前至少有n个获取,则n为一个后跟文字m的向后引用。如果前面的条件都不满足,若n和m均为八进制数字(0-7),则\nm将匹配八进制转义值nm。...\nml 如果n为八进制数字(0-3),且m和l均为八进制数字(0-7),则匹配八进制转义值nml。 \un 匹配n,其中n是一个用四个十六进制数字表示的Unicode字符。

    24610

    总结 Python 常见的验证正则表达式

    这里要注意两个函数的使用: re.compile用于编译正则表达式,生成一个正则表达式( Pattern )对象; .findall用于在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的...数字 验证数字:^[0-9]*$ 验证n位的数字:^\d{n}$ 验证至少n位数字:^\d{n,}$ 验证m-n位的数字:^\d{m,n}$ 验证零和非零开头的数字:^(0|[1-9][0-9]*)$...“er\B”能匹配“verb”中的“er”,但不能匹配“never”中的“er”。 \cx 匹配由x指明的控制字符。x的值必须为A-Z或a-z之一。否则,将c视为一个原义的“c”字符。...其中num是从1开始的十进制正整数,其上限可能是9、31、99,甚至无限。例如:“(.)\1”匹配两个连续的相同字符。 \n 标识一个八进制转义值或一个向后引用。...如果\nm之前至少有n个获取,则n为一个后跟文字m的向后引用。如果前面的条件都不满足,若n和m均为八进制数字(0-7),则\nm将匹配八进制转义值nm。

    1.9K20

    使用Python验证常见的50个正则表达式

    这里要注意两个函数的使用: re.compile用于编译正则表达式,生成一个正则表达式( Pattern )对象; .findall用于在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果没有找到匹配的...数字 验证数字:^[0-9]*$ 验证n位的数字:^\d{n}$ 验证至少n位数字:^\d{n,}$ 验证m-n位的数字:^\d{m,n}$ 验证零和非零开头的数字:^(0|[1-9][0-9]*)$...“er\B”能匹配“verb”中的“er”,但不能匹配“never”中的“er”。 \cx 匹配由x指明的控制字符。x的值必须为A-Z或a-z之一。否则,将c视为一个原义的“c”字符。...其中num是从1开始的十进制正整数,其上限可能是9、31、99,甚至无限。例如:“(.)\1”匹配两个连续的相同字符。 \n 标识一个八进制转义值或一个向后引用。...如果\nm之前至少有n个获取,则n为一个后跟文字m的向后引用。如果前面的条件都不满足,若n和m均为八进制数字(0-7),则\nm将匹配八进制转义值nm。

    6.1K30
    领券