day3学习笔记
学习格式输出与循环
一、了解基本的运算符类型:
1.运算符:
算术运算符(+-*/、//、**、%)
比较运算符(>、<、>=、<=、==、!=)
逻辑运算符(and、or、not)
赋值运算符(+=、-=、*=、/=、//=、**=、%=)
复合赋值运算符
而对于运算符来说也是分优先级的(算术 > 比较 > 逻辑 > 赋值)
2.还有了解简单的数据类型转换:整型、浮点型、布尔值间的相互转换
二、格式输出
Python提供了三种输出形式:
1、旧示的字符串格式输出:%s、%d、%f等。
1.%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))
输出结果为:
num
20 岁的 张三 考上了清华大学
20岁的张三考上了清华大学
-
%f不仅可以用作浮点型的占位符,还可以用来在字符串中保留小数位数,还可以默认保留6位小数,%.Nf保留N位小数
案例:
string1 = '圆周率:%f' % 3.1415926
string2 = '圆周率:%.2f' % 3.1415926
print(string1)
print(string2)
seconds = 100
h = seconds // 3600
m = (seconds - h * 3600) // 60
s = seconds - h * 3600 - 60 * m
print('%d时%d分%d秒' % (h, m, s))
输出结果为:
圆周率:3.141593
圆周率:3.14
0时1分40秒
2、format方法
例如语法:‘字符串’.format(values)
其中的字符串中有很多个{},{}表示占位符,format将values传入到{}中
案例:
name = '张三'
age = 20
edu = '清华大学'
string3 = '{}岁的{}考上了{}'.format(age, '张三', edu)
print(string3)
输出为:
20岁的张三考上了清华大学
3、f-字符串(格式化字符串字面值)
在语法中:f’字符串’前面添加f或F,字符串中有一个或多个{},{}中直接写数据或公式(变量)
例如:
'张三'
age = 20
edu = '清华大学'
string4 = f'{age}岁的{name}考上了{edu}'
print(string4)
输出为:20岁的张三考上了清华大学
三、格式化输出进阶
在格式化输出的同时也可以修改数据的样式:
1、千分位符 —— ,:表示对传入的数据进行说明,:右边的格式表示说明的样式
例如:
string1 = '账号余额:{:,}'.format(100000000)
print(string1
输出为:账号余额:100,000,000
2、左对齐,右对齐,居中对齐 —— <、>、^
学号:Python001、Python002、……Python999
>3表示将传入的数据右对齐,如果传入数据的长度不满足3,默认使用空格补全。
0>3表示将传入的数据右对齐,如果传入数据的长度不满足3,使用0补全
例如:
string2 = '学号:Python{:>3}'.format(1)
string2 = '学号:Python{:0>3}'.format(1)
print(string2)
输出为:学号:Python001
3、保留小数位数
例如:
string3 = '数字:{:.4f}'.format(3.1415926)
print(string3)
输出为:``数字:3.1416`
4、百分比 —— %
例如:
string4 = '百分比:{:.2%}'.format(3.1415926)
print(string4)
输出为:百分比:314.16%
也可以 f-字符串修改传入数据的格式:
string5 = f'学号:Python{1:0>3}'
print(string5)
输出为:学号:Python001
四、循环
作用:用来解决重复的事情
1、for循环
例如:计算1-100的和
range()用来生成指定左闭右开区间中的整数,是一个容器
sum1 = 0
for i in range(1, 101):
print(i)
sum1 += i
print(sum1)
"""
语法:
for 变量 in 容器:
代码块
“”"
二、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)中的所有偶数
# A.如果step>0,end必须大于start,start可以不写,表示从0开始取,获取到end;
# start如果写了,表示从start获取到end;步长表示下一次获取那个元素,下一次获取的元素等于
# 本次获取的元素 + 步长。
for i in range(101):print(i)for i in range(99, 102):print(i)for i in range(50, 100, 5):print(i)`
# 练习:计算100以内5的倍数的和(使用步长计算)
numSum = 0
for i in range(0, 101, 5):
numSum += i
print(numSum)
sum():计算数字容器中所有数字的和
print(sum(range(0, 101, 5)))
B.如果step<0,end必须小于start,表示从start开始取元素,下一次获取的元素为本次获取的元素加步长
for i in range(10, -5, -2):
print(i)
for循环`的次数和容器中元素的个数相关(for循环适合有限次数的循环)。
**pass关键字用法:**pass的作用保证程序结构的完整性,但是不参与程序的执行。
例如:
numSum = 0
for i in range(1, 101):
# numSum += i
pass
print(i)
print(numSum)
输出为:100
0
2、while循环
while循环既可以用于有限次数的循环,也可以用于不能确定次数的循环。
while循环语法:
while 条件
代码块
案例: 计算1-100的和
numSum = 0
i = 1
while i <= 100:
numSum += i
i += 1
print(numSum)
**嵌套循环:**for循环和while循环可以相互嵌套
for循环适合有限次数的循环,while循环既可以用于有限次数的循环,也可以用于不能确定次数的循环。
案例:1-5五个数字循环三遍
#如果for循环中变量用不到,仅做循环次数使用,可以使用_代替变量
for _ in range(3):
for i in range (1, 6):