python基础学习第三天格式化输出、for循环、while循环、嵌套循环、range用法

概括昨日所学的知识点

  1. 运算符
  • 算术运算符 (+ - * /、 //、 **、 %)
  • 比较运算符 (> < >= <= == !=)
  • 逻辑运算符 (and or not)
  • 赋值运算符 (+= -= *= /= //= **= %=)
  • 复合赋值运算符
  • 运算符优先级 (算术 > 比较 > 逻辑 >赋值)
  1. 简单的数据类型转换
  • 整型、浮点型、布尔值互相转换
  1. 分支结构
  • if、else、elif
  • 单分支结构
  • 多分支结构
  • 嵌套分支结构
  • 三目运算符

一、格式化输出

字符串的特殊性:放入引号中的符号代表其本身

num = 10
print('num')

输出的结果为:num

python提供了三种格式化输出形式:旧式的字符串输出、format方法、f-字符串 (格式化字符串字面值)

1.旧式的字符串格式化输:%s、%d、%f等
  • %s代表字符串占位符,%d代表整型占位符,%f浮点型占位符

语法:‘string’ % values

  • string中包含了%s、%d、%f,values代表向string中传入的值,通过%传入,values需要和string中的%s、%d、%f一一对应。

注:values如果代表多个数据,需要使用小括号扩起来。

示例:

name = '张三'
age = 20
print(age, '岁的', name, '考上了清华大学')
print('%d岁的%s考上了清华大学' % (age, name))

输出的结果:

在这里插入图片描述

  • %f不仅可以用作浮点型的占位符。还可以用来在字符串中保留小数位。

  • %f默认保留六位

string1 = '圆周率: %f' % 3.1415926
string2 = '圆周率: %.4f' % 3.1415926
print(string1)
print(string2)

输出的结果:

在这里插入图片描述

练习:假设今天的上课时间为15678秒,编程计算今天上课时间是多少⼩时,
多少分钟,多少秒;以‘XX时XX分XX秒’的⽅式表示出来。
例如:100秒表示成**0时1分40秒**

seconds = 100
h = seconds // 3600
m = (seconds - h * 3600) // 60
s = seconds - h * 3600 - 60 * m
print(h, '时', m, '分', s, '秒')
# 结果:0时1分40秒
2、format的用法

使用的语法:’字符串‘.format(values)
字符串中有很多个{},{}表示占位符,format将values传入到{}中
用法示例:

name = '张三'
age = 20
edu = '清华大学'
string3 = '{}岁的{}考上了{}'.format(age,'张三',edu)
print(string3)

输出结果为:

在这里插入图片描述

3.f-字符串(格式化字符串字面值)

使用的语法:f’字符串’
在字符串前面添加f或者F,字符串中有一个或多个{},{}中直接写数据或公式(变量)

用法示例:

name = '张三'
age = 20
edu = '清华大学'
string4 = f'{age}岁的{name}考上了{edu}'
print(string4)

在这里插入图片描述

二、进阶的格式化输出

1.千分位符 ——

符号冒号:表示对传入的数据进行说明,冒号:右边的格式表示说明的样式。

string1 = '账户余额: {:,}'.format(1000000000)
print(string1)

2.左对齐,右对齐,居中对齐 —— <、>、^

学号: python001、python002、……python999

# >3表示将传入的数据右对齐,如果传入数据的长度不满足3,默认使用空格补全。
# 0>3表示将传入的数据右对齐,如果传入数据的长度不满足3,使用0补全。
string2 = '学号:python{:>3}'.format(1)
string3 = '学号:python{:0>3}'.format(1)
print(string3)

3.保留小数位数

string3 = '数字: {:.2f}'.format(3.1415926)
print(string3)

4.百分比 —— %

string4 = '百分比:{:%}'.format(3.1415926)
print(string4)

四个格式化输出的结果:

在这里插入图片描述

三、for循环

Python for 循环可以遍历任何可迭代对象,如一个列表或者一个字符串。

for循环的一般格式如下:

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

循环的作用:就是用来解决重复的事情。

# for循环的语法
'''
语法:
for 变量 in 容器:
    代码块
'''

for循环流程图:

在这里插入图片描述

  • 案例:计算1-100的和
sum1 = 0
for i in range(1, 101):  # range()用来生成指定左闭右开区间中的整数,是一个容器
    sum1 += i
print(sum1)

输出结果为:5050

range()函数
  • range(start,end,step)用来生成[start,end)中的整数,是一个容器,step为步长,默认为1,表示获取元素的间隔。
    1.range(101):表示获取[0,101)中的整数
    2.range(1,101):表示获取[1,101)中的奇数
    3.range(1,101,2):表示获取[1,101)中的奇数
    4.range(100,0,-2):表示获取[100,0)中的所有偶数

  • 如果step>0, end必须大于start,start可以不写,表示从0开始取,获得到end。

  • start如果写了,表示从start获得到end;步长表示下一次获取那个元素,下一次获取的元素等于本次获取的元素 + 步长。

for i in range(101):
    print(i)

for i in range(98,101):
    print(i)

for i in range(50,100,5):
    print(i)

练习:计算100以内5的倍数的和(使用步长)

a =0
b= range(0,101,5)
for i in b:
    a += i
print(a)

结果为:1050

# sum():计算数字容器中所有数字的和
print(sum(range(0, 101, 5)))

练习:使用for循环找出100以内所有的4的倍数并求和

numSum2 = 0
for i in range(101):
    if i % 4 == 0:
        numSum2 += i
print(numSum2)

结果为1300

  • 如果stet<0, end必须小于start,表示从start开始取元素,下一次获取的元素为本次获取的元素 + 步长。
for i in range(10,-5,-2):
    print(i)
  • 注:for循坏的次数和容器中元素的个数相关(for循坏适合有限次次数的循环)。

四、while循环

前面说到for循坏适合有限次数的循环,而while循环既可以用于有限次数的循环,也可以用于不确定次数的循环。

# 语法
'''
while循环语法:
while 条件:
    代码块
'''

案例:用while循环计算1-100的和

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

练习:使用while循环找出100以内所有的4的倍数并求和

numSum3 = 0
i = 0
while i <= 100:
    numSum3 += i
    i += 4
print(numSum3)

结果为1300

五、嵌套循环

在python中循环分为for循环和while循环。
嵌套循环:for循环和while循环可以相互嵌套。
案例:1-5五个数字循环三遍

# 如果for循环中变量用不到,仅做循环次数使用时,可以用_代替变量
for _ in range(3):
    for i in range(1, 6):
        print(i)

练习:使用循坏打印九九乘法表中的公式

or index in range(1,10):  #控制行
    for column in range(1,index + 1):  #控制列
        print(f'{index} * {column} = {index * column:<4}',end='')
    print()

输出的结果如下:

在这里插入图片描述

作者第三天所学就到这,下来就多做做题,熟悉循环用法!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


学习编程是顺着互联网的发展潮流,是一件好事。新手如何学习编程?其实不难,不过在学习编程之前你得先了解你的目的是什么?这个很重要,因为目的决定你的发展方向、决定你的发展速度。
IT行业是什么工作做什么?IT行业的工作有:产品策划类、页面设计类、前端与移动、开发与测试、营销推广类、数据运营类、运营维护类、游戏相关类等,根据不同的分类下面有细分了不同的岗位。
女生学Java好就业吗?女生适合学Java编程吗?目前有不少女生学习Java开发,但要结合自身的情况,先了解自己适不适合去学习Java,不要盲目的选择不适合自己的Java培训班进行学习。只要肯下功夫钻研,多看、多想、多练
Can’t connect to local MySQL server through socket \'/var/lib/mysql/mysql.sock问题 1.进入mysql路径
oracle基本命令 一、登录操作 1.管理员登录 # 管理员登录 sqlplus / as sysdba 2.普通用户登录
一、背景 因为项目中需要通北京网络,所以需要连vpn,但是服务器有时候会断掉,所以写个shell脚本每五分钟去判断是否连接,于是就有下面的shell脚本。
BETWEEN 操作符选取介于两个值之间的数据范围内的值。这些值可以是数值、文本或者日期。
假如你已经使用过苹果开发者中心上架app,你肯定知道在苹果开发者中心的web界面,无法直接提交ipa文件,而是需要使用第三方工具,将ipa文件上传到构建版本,开...
下面的 SQL 语句指定了两个别名,一个是 name 列的别名,一个是 country 列的别名。**提示:**如果列名称包含空格,要求使用双引号或方括号:
在使用H5混合开发的app打包后,需要将ipa文件上传到appstore进行发布,就需要去苹果开发者中心进行发布。​
+----+--------------+---------------------------+-------+---------+
数组的声明并不是声明一个个单独的变量,比如 number0、number1、...、number99,而是声明一个数组变量,比如 numbers,然后使用 nu...
第一步:到appuploader官网下载辅助工具和iCloud驱动,使用前面创建的AppID登录。
如需删除表中的列,请使用下面的语法(请注意,某些数据库系统不允许这种在数据库表中删除列的方式):
前不久在制作win11pe,制作了一版,1.26GB,太大了,不满意,想再裁剪下,发现这次dism mount正常,commit或discard巨慢,以前都很快...
赛门铁克各个版本概览:https://knowledge.broadcom.com/external/article?legacyId=tech163829
实测Python 3.6.6用pip 21.3.1,再高就报错了,Python 3.10.7用pip 22.3.1是可以的
Broadcom Corporation (博通公司,股票代号AVGO)是全球领先的有线和无线通信半导体公司。其产品实现向家庭、 办公室和移动环境以及在这些环境...
发现个问题,server2016上安装了c4d这些版本,低版本的正常显示窗格,但红色圈出的高版本c4d打开后不显示窗格,
TAT:https://cloud.tencent.com/document/product/1340