Python3循环

Python中while语句的一般形式:

while 判断条件:

       语句

 

同样需要注意冒号和缩进,另外在Python中没有do…while循环

下面的实例计算1到100总和

##calc.py
n = 100sum = 0
counter = 1
while counter <= n:sum = sum + countercounter += 1print("total from 1 to 100 : %d",sum)

运行结果:

robot@ubuntu:~/wangqinghe/python/20190826$ python3.5 calc.py

total from 1 to 100 : %d 5050

 

while循环中使用else语句

在while…else在条件语句为false时执行els语句块

#while.py
count = 0
while count < 5:print(count," < 5")count = count + 1
else :print(count ," >= 5")

运行结果:

robot@ubuntu:~/wangqinghe/python/20190826$ python3.5 while.py

0  < 5

1  < 5

2  < 5

3  < 5

4  < 5

5  >= 5

 

for循环:

Python for循环可以遍历任何序列的项目,如一个列表或一个字符串

for循环的 一般格式如下

for <variable> in <sequence>:<statement>
else:<statement>

实例:

break语句用于跳出当前循环体:

##break.py
sites = ["Baidu","Google","Runoob","Taobao"]
for site in sites:if site == "Runoob":print("cainiao!")breakprint("loop data " + site)
else:print("Having no loop data!")
print("loop end!")

运行结果:

robot@ubuntu:~/wangqinghe/python/20190826$ python3.5 break.py

loop data Baidu

loop data Google

cainiao!

loop end!

range()函数

如果你需要遍历数字序列,可以使用内置的range()函数,它会生成数列,例如:

 

 

也可以使range以指定数字开始并指定不同的增量,(甚至可以是负数,有时这也叫步长)

 

  

负数:

 

 

也可以结合range()和len()函数以遍历一个序列的索引:

 

 

 

还可以使用range()函数来创建一个列表:

 

 

 

break和continue语句及循环中的else子句

break语句可以跳出for和while循环体,如果你从for或while循环终止,任何对应的循环else块将不执行:

#else.py
for letter in 'Runoob':if letter == 'b':break;print('the current letter : ',letter)print("the next example")var = 10
while var > 0:print('the current variable : ',var)var = var - 1if var == 5:break;
print("GOOF bye!")

运行结果:

robot@ubuntu:~/wangqinghe/python/20190826$ python3 else.py

the current letter :  R

the current letter :  u

the current letter :  n

the current letter :  o

the current letter :  o

the next example

the current variable :  10

the current variable :  9

the current variable :  8

the current variable :  7

the current variable :  6

GOOF bye!

 

continue语句被用来Python跳出当前循环块的剩余语句,然后继续下一轮循环。

循环语句可以有else子句,它在穷尽列表(for循环)或条件变为false(以while循环)导致循环终止时被执行,但循环被break终止时不执行。

下列是查询质数的循环例子:

##prime.py
for n in range(2,10):for x in range(2,n):if n % x == 0:print(n," == ",x, '*', n//x )breakelse:print(n," is prime")

运行结果:

robot@ubuntu:~/wangqinghe/python/20190826$ python3 prime.py

2  is prime

3  is prime

4  ==  2 * 2

5  is prime

6  ==  2 * 3

7  is prime

8  ==  2 * 4

9  ==  3 * 3

 

pass语句

Python pass是空语句,是为了保持程序结构的完整性。

pass不做任何事情,一般用作占位语句:

#pass.py
for letter in 'Runoob':if letter == 'o':passprint('execute pass block')print('the current letter : ',letter)print("Good bye!")

运行结果:

 robot@ubuntu:~/wangqinghe/python/20190826$ python3 pass.py

the current letter :  R

the current letter :  u

the current letter :  n

execute pass block

the current letter :  o

execute pass block

the current letter :  o

the current letter :  b

Good bye!

 

pass只是为了防止语法的错误

pass就是一条空语句,在代码段中或定义函数时,如果没有内容,或者就先不做任何处理,直接跳过,就可以先使用pass

 

十进制转换:

#translate.py
while True:number = input('please input a integer(enter Q exit ):')if number in ['q','Q']:breakelif not number.isdigit():print("input error,please continue input : ")continueelse:number = int(number)print("decimal --> hexadecimal: %d -> 0x%x"%(number,number))print("decimal --> octonary: %d -> 0x%o"%(number,number))print("decimal --> binary: %d -> "%number,bin(number))

运行结果:

robot@ubuntu:~/wangqinghe/python/20190826$ python3 translate.py

please input a integer(enter Q exit ):9

decimal --> hexadecimal: 9 -> 0x9

decimal --> octonary: 9 -> 0x11

decimal --> binary: 9 ->  0b1001

please input a integer(enter Q exit ):18

decimal --> hexadecimal: 18 -> 0x12

decimal --> octonary: 18 -> 0x22

decimal --> binary: 18 ->  0b10010

please input a integer(enter Q exit ):q

转载于:https://www.cnblogs.com/wanghao-boke/p/11414083.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/384844.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python3迭代器和生成器

迭代器 迭代是Python最强大的功能之一&#xff0c;是访问元素集合的一种方法。 迭代器是一个可以记住遍历的位置的对象。 迭代器对象从集合的第一个元素开始访问&#xff0c;直到所有的元素被访问完结束&#xff0c;迭代器只能向前不会后退。 迭代器有两个基本方法&#xff0c;…

Pythton3实例

计算1-100之和 #add.py n 0 sum 0 for n in range(0,101):sum n print(sum) 实现99乘法法则 #mul.py i 1 while i < 9:j 1while j < i:mut j*iprint("%d * %d %d"%(j,i,mut),end" ")j 1print(" ")i 1 运算结果: robotubuntu:~/wa…

Python3函数

函数是组织好的&#xff0c;可重复使用的&#xff0c;用来实现单一&#xff0c;或相关功能的代码段。 函数能提高应用的模块性&#xff0c;和代码的重复使用率。 定义一个函数 可以定义一个由自己想要功能的函数&#xff0c;以下是简单规则&#xff1a; l 函数代码块是以def关…

epoll函数

epoll是Linux下多路复用IO接口select/poll的增强版本&#xff0c;它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率&#xff0c;因为它会复用文件描述符集合来传递结果而不用迫使开发者每次等待事件之前都必须重新准备要被侦听的文件描述符集合&#xff0…

epoll事件模型

事件模型 EPOLL事件有两种模型&#xff1a; Edge Triggered (ET) 边缘触发只有数据到来才触发&#xff0c;不管缓存区中是否还有数据。 Level Triggered (LT) 水平触发只要有数据都会触发。 思考如下步骤&#xff1a; 假定我们已经把一个用来从管道中读取数据的文件描述符(RFD)…

epoll反应堆模型代码

libevent函数库核心思想 /*** epoll_loop.c ***/ #include<stdio.h> #include<sys/epoll.h> #include<sys/socket.h> #include<arpa/inet.h> #include<fcntl.h> #include<unistd.h> #include<errno.h> #include<string.h> #in…

UDP广播

广播是在局域网之间的一对多的通信方式&#xff0c;使用的udp协议 /*** client.c ***/ #include <stdio.h> #include <unistd.h> #include <string.h> #include <sys/socket.h> #include <arpa/inet.h>#define SERVER_PORT 8000 #define MAXLINE…

UDP组播

多播(组播) 组播组可以是永久的也可以是临时的。组播组地址中&#xff0c;有一部分由官方分配的&#xff0c;称为永久组播组。永久组播组保持不变的是它的ip地址&#xff0c;组中的成员构成可以发生变化。永久组播组中成员的数量都可以是任意的&#xff0c;甚至可以为零。那些没…

Python3数据结构

列表&#xff1a; Python列表是可变的&#xff0c;这是它区别于字符串数组和元组的最重要的特点。列表可以修改&#xff0c;而字符串和元组不能。 以下是Python中列表的描述方法&#xff1a; 方法 描述 list.append(x) 将元素添加到列表结尾 list.extend(L) 通过添加指定列…

sed、awk工具

ed sed意为流编辑器&#xff08;Stream Editor&#xff09;&#xff0c;在Shell脚本和Makefile中作为过滤器使用非常普遍&#xff0c;也就是把前一个程序的输出引入sed的输入&#xff0c;经过一系列编辑命令转换为另一种格式输出。sed和vi都源于早期UNIX的ed工具&#xff0c;所…

C语言正则表达式

POSIX规定了正则表达式的C语言库函数&#xff0c;详见regex(3)。我们已经学习了很多C语言库函数的用法&#xff0c;读者应该具备自己看懂man手册的能力了。本章介绍了正则表达式在grep、sed、awk中的用法&#xff0c;学习要能够举一反三&#xff0c;请读者根据regex(3)自己总结…

makefile通用版本

实际当中程序文件比较大&#xff0c;这时候对文件进行分类&#xff0c;分为头文件、源文件、目标文件、可执行文件。也就是说通常将文件按照文件类型放在不同的目录当中&#xff0c;这个时候的Makefile需要统一管理这些文件&#xff0c;将生产的目标文件放在目标目录下&#xf…

Python3OS文件/方法

Python3OS文件/方法 os模块提供了非常丰富的方法用来处理文件和目录。 方法 描述 os.access(path,mode) 检验权限模式 os.chdir(path) 改变当前工作目录 os.chflags(path,flags) 设置路径的标记为数字标记 os.chmod(path,mode) 更改权限 os.chown(path,uid,gid) 更改…

Python3文件

open()方法 Python open()方法永于打开一个文件&#xff0c;并返回文件对象&#xff0c;并对文件进行处理过程中都需要用到这个方法&#xff0c;如果该文件无法被打开&#xff0c;则抛出OSError 注意&#xff1a;使用open()方法一定要保证关闭文件对象&#xff0c;即调用close(…

Python3输入输出

Python两种输出值的方式&#xff0c;表达式语句和print()函数。 第三种方式是使用文件对象的write()方法&#xff0c;标准输出文件可以用sys.stdout的引用。 如果你希望输出的形式更加多样&#xff0c;可以使用str.fomat()函数来格式化输出值。 如果你希望将输出的值转化成字符…

动态库加载顺序

1.编译目标代码时指定的动态库搜索路径&#xff1b; 2.环境变量LD_LIBRARY_PATH指定的动态库搜索路径&#xff1b; 3.配置文件/etc/ld.so.conf中指定的动态库搜索路径&#xff1b; 4.默认的动态库搜索路径/lib&#xff1b; 5.默认的动态库搜索路径/usr/lib。 转载于:https://ww…

Python3正则表达式

正则表达式是一个特殊的字符序列&#xff0c;他能帮助你方便的检查一个字符串是否与某种模式匹配。re.match函数 re.match尝试从字符串的起始位置匹配一个模式&#xff0c;如果不是起始位置匹配成功的话&#xff0c;match()就返回一个none。 函数语法&#xff1a; re.match(pat…

C/C++输入

fgets(str,n,stdin) 从键盘输入一行&#xff0c;替代gets()。读取到n-1字节时或换行符时终止&#xff0c;如果是文件的话&#xff0c;读到文件结尾也会停止 getline(cin,str) str的类型必须是string类&#xff0c;它是C特定的字符串类&#xff0c;区别于C的char *数据类型。 ci…

strlen和sizeof的区别

C语言中没有字符串&#xff0c;用的是字符数组来模拟字符串。 C风格的字符串时字符数组然后在末尾加0表示结尾。 在C语言中有strlen和sizeof两个函数求字符数组的长度函数&#xff0c;他们俩的区别就是是否把最后的结束标志也加上去。 strlen是不加的&#xff0c;他表示字符串的…

shell编程练习题

求2个数之和计算1-100的和将一目录下所有的文件的扩展名改为bak编译当前目录下的所有.c文件&#xff1a;打印root可以使用可执行文件数&#xff0c;处理结果: roots bins: 2306打印当前sshd的端口和进程id&#xff0c;处理结果: sshd Port&&pid: 22 5412输出本机创建20…