循环结构

优点

  1. 减少代码冗余
  2. 提升效率

while循环

语法结构

while 条件表达式:
循环体
code1
code2

打印0-100

i = 0
while i <= 100:
print(i)
i+=1

执行过程:

第一套循环

首先i=0
判断0<=100 条件成立 返回True 执行循环体
打印当前i
i+=1 i = i+1 i=>1 第二套循环 回到第二行循环判断条件中
1 <= 100 条件成立 返回True 执行循环体
打印当前i
i+=1 i = i+1 i=>2 ......
直到当i = 101 时 ,回循环判断条件中,发现不成立,返回False
循环体终止不执行了.跳出循环

计算1~100的累加

i = 0
sum = 0
while i <= 100:
sum = sum + i #sum += i
i+=1
print(sum)

执行过程

# 第一次循环
判断 i 1<=100 条件成立 执行循环体当中的内容
sum = sum + i => sum = 0 + 1
i+=1 i=>2 # 第二次循环
判断 i 2<=100 条件成立 执行循环体当中的内容
sum = sum + i => sum = 0 + 1 + 2
i+=1 i=>3 # 第三次循环
判断 i 3<=100 条件成立 执行循环体当中的内容
sum = sum + i => sum = 0 + 1 + 2 + 3
i+=1 i=>4 依次类推...
当i = 101 的时候 发现101 <= 100 返回False 循环体不执行,终止循环
sum = sum + i => sum = 0+1+2+3+ ..... + 100
'''

可以写一个死循环,通过if判断退出

i = 0
sum = 0
while True:
sum = sum + i
i+=1
if i == 101:
print(sum)
break

使用信号控制

sign = True
i = 0
sum = 0
while sign:
sum = sum + i
i+=1
if i == 101:
sign = False
print(sum)

打印一行10个星星

直接打印

i = 1
while i < 10:
print("*",end="")
i+=1

用一个变量打印出一行十个小星星 (十个小星星塞在一个变量中,最后达因变量)

i = 0
strvar = ''
while i<10:
strvar += "*"
i+=1
# strvar = strvar + "*" + "*" + "*"
print(strvar)

打印一行十个小星星 奇数个打印★ 偶数个打印☆

i = 0
while i<10:
# 余数为0 打印黑猩
if i % 2 == 0:
print("★",end="")
else:
#否则打印白星
print("☆",end="")
i+=1

用 一个循环 打印十行十列小星星

print()
i = 0
while i<100:
# 输出小星星
print("*",end="")
# i 从0开始到99结束
# 任意数n与10取余 范围0 ~ 9 0代表第一个星星 9代表最后一个,正好10 , 如果是10个选择换行
if i % 10 == 9:
# 打印换行
print()
i+=1

一个循环 打印十行十列隔列变色小星星(一个循环)

i = 0
while i<100:
# 输出小星星
if i % 2 == 0:
print("★",end="")
else:
print("☆",end="") # 最后换行
if i % 10 == 9:
print() i+=1

一个循环 打印十行十列隔行变色小星星(一个循环)

i = 0
while i<100:
# 利用地板除与取余的规律 产生十个相同的数字,并且按10个相同的余数取花色
if i // 10 % 2 == 0:
print("★",end="")
else:
print("☆",end="") # 控制换行
if i % 10 == 9:
print() i+=1

字符串的操作

字符串的拼接  +

str1 = "生命"
str2 = "是美丽的"
res = str1 + str2
print(res)
str1 += str2 # str1 = str1 + str2
print(str1)

字符串的重复 *

str1 = "重要的事情说三遍"
res = str1 * 3
print(res)

字符串跨行拼接 \

strvar = "我的电脑丢了用英文说是my"\
" computer"\
"is lost"
print(strvar)

字符串的索引

和列表类似

strvar = "梁山好汉108将"
# -8-7-6-5-4-3-2-1
res = strvar[6]
print(res)
res = strvar[-2]
print(res)

字符串的切片:

语法 => 字符串[::]  完整格式:[开始索引:结束索引:间隔值]
(1)[开始索引:] 从开始索引截取到字符串的最后
(2)[:结束索引] 从开头截取到结束索引之前(结束索引-1)
(3)[开始索引:结束索引] 从开始索引截取到结束索引之前(结束索引-1)
(4)[开始索引:结束索引:间隔值] 从开始索引截取到结束索引之前按照指定的间隔截取字符
(5)[:]或[::] 截取所有字符串

案例

strvar = "生命中曾经有过的所有灿烂,原来终究,都需要用寂寞来偿还"

# (1)[开始索引:]  从开始索引截取到字符串的最后
res = strvar[23:] #寞来偿还
print(res)
# (2)[:结束索引] 从开头截取到结束索引之前(结束索引-1)
# 注意:高位取不到
res = strvar[:4] #生命中曾
print(res) # (3)[开始索引:结束索引] 从开始索引截取到结束索引之前(结束索引-1)
res = strvar[5:9] #有过的所
print(res) # (4)[开始索引:结束索引:间隔值] 从开始索引截取到结束索引之前按照指定的间隔截取字符
'''
找出开始索引号3 然后依次加5
会变成 3 8 13 18 23 28 通过数字找索引对应的字符
'''
res = strvar[1::2] #命曾有的有烂原终,需用寞偿
print(res)
res = strvar[3::5] #曾所原都寞
print(res)
res = strvar[:10:3] #生曾过有
print(res)
res = strvar[::2] #生中经过所灿,来究都要寂来还
print(res) # 逆向索引 -1 -2 -3 -4 -5 ...
res = strvar[-1::-1] # 还偿来寞寂用要需都,究终来原,烂灿有所的过有经曾中命生
print(res)
res = strvar[-1:-3:-1] # 方向从右向左 还偿
print(res)

字符串的格式化 (%d  %f  %s 占位符 )

res = "我今天花了%d元买了一杯咖啡,在星巴克花%f小时学习python,感觉%s" %(30,3.5,"累爆了")
print (res)

使用字符串类型的,必须使用引号,否则报错

006.Python循环语句while循环的更多相关文章

  1. 9、python判断语句与循环语句

    前言:本文主要介绍python判断语句与循环语句,包括if语句.while循环.for循环.range函数. 一.if语句  关键字:if.elif.else,写法如下: # if if 条件: # ...

  2. 了解Python控制流语句——for 循环

    for 循环 Python教程中for...in 语句是另一种循环语句,其特点是会在一系列对象上进行迭代(Iterates),意即它会遍历序列中的每一个项目.我们将在后面的Python序列(Seque ...

  3. Python——条件语句及其循环

    条件语句及其循环 一. 条件语句 在条件语句中可以使用以下所有的运算符: 算术运算符:+.-.*././/.%.** 关系运算符:>.<.==.<=.>=.!= 测试运算符:i ...

  4. c#循环语句 for 循环嵌套的练习。还有跳转语句,异常语句,迭代穷举介绍

    先说一下循环嵌套:循环嵌套就是再一个循环里面再放一个循环,也就是说如果没一个循环都循环10次,那么第一个循环是1的时候,嵌套的循环会循环十次.也就是10*10的效果. for 循环语句 主要还是逻辑思 ...

  5. 循环语句 for循环、while循环、do while循环

    循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下 ...

  6. Python新手学习基础之循环语句——While循环

    while循环 上一节的条件语句实际上只能执行一次,如果要反复的判断执行一些事件要怎么办? 这个时候就需要靠while.for等循环语句了. 我们先来认识下while循环,何为while循环?就是在某 ...

  7. 007.Python循环语句while循环嵌套

    1 使用两个循环打印十行小星星 j = 0 while j<10: # 打印一行十个小星星 i = 0 while i<10: print("*",end=" ...

  8. C# 循环语句 for循环

    循环:反复执行某段代码. 循环四要素:初始条件,循环条件,循环体,状态改变.for(初始条件;循环条件;状态改变){ 循环体} 给出初始条件,先判断是否满足循环条件,如果不满足条件则跳过for语句,如 ...

  9. 循环语句(循环for与while等)

    1.1for循环 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

随机推荐

  1. [面试仓库]CSS面试题汇总-图文样式篇

      图文样式这,我们挑了一个最常见的来说:line-height继承问题.从三个方面来考虑: 如果是具体的数值,则继承该数值 body{ font-size:32px; line-height:40p ...

  2. Python基础之:struct和格式化字符

    目录 简介 struct中的方法 格式字符串 字节顺序,大小和对齐方式 格式字符 格式数字 格式字符 格式字符串 填充的影响 复杂应用 简介 文件的存储内容有两种方式,一种是二进制,一种是文本的形式. ...

  3. Java8中的Stream流式操作 - 入门篇

    作者:汤圆 个人博客:javalover.cc 前言 之前总是朋友朋友的叫,感觉有套近乎的嫌疑,所以后面还是给大家改个称呼吧 因为大家是来看东西的,所以暂且叫做官人吧(灵感来自于民间流传的四大名著之一 ...

  4. 还在使用MyBatis Generator?试试这个工具

    代码生成 在企业软件开发过程中,大多数时间都是面向数据库表的增删改查开发.通过通用的增删改查代码生成器,可以有效的提高效率,降低成本:把有规则的重复性劳动让机器完成,解放开发人员. MyBatis G ...

  5. DevEco Device Tool 2.1 Beta1 的Hi3861在Windows平台的编译体验

    DevEco Device Tool迎来了2.1 Beta1,其中的亮点之一是:支持Hi3861开发板的源码在Windows平台编译.带着浓厚的兴趣,第一时间做了一次体验. 首先在官网下载" ...

  6. Java中的绑定

    1 前言 做了一次笔试题,发现了一题问答题,是关于Java绑定的: 当时做的时候是完全不会的... 于是这里补上一篇Java绑定的文章. 2 绑定 首先来了解一下绑定的概念.绑定是指一个方法的调用与方 ...

  7. Day13_66_sleep()方法 (二)

    sleep()方法 (二) * 因为sleep()是静态方法,所以用 线程对象名.sleep() 和 Thread.sleep()是一样的意思,用线程对象名调用并不等于让线程对象名所指向的线程阻塞,而 ...

  8. Day12_59_Java多线程

    多线程 1. 什么是进程? * 每个进程是一个应用程序,都有独立的内存空间,一个进程对应一个应用程序. * 例如:在windows操作系统中启动了word就是启动了一个进程,一边听音乐,一边打游戏就是 ...

  9. Scrapy的流程

    Scrapy框架的架构如下图 具体部分说明: Engine:引擎,处理整个系统的数据流处理,出发事物,是整个框架的核心 Item:项目.定义了爬取结果的数据结构,爬取的数据会被赋值成该Item对象 S ...

  10. mac系统 php 7.2安装memcache扩展

    memcache的安装 下载地址:https://github.com/websupport-sk/pecl-memcache/archive/php7.zip wget https://github ...