python 1.2 while循环 + 格式化输出
1、while循环
无限循环
print("开始")
while True:
print("123")
print("结束")
date = True
# 变量的值等于布尔 True
while date:
print("123")
date = True
while date:
print(123)
date = False
# 在循环中更改了变量的状态
# 有限循环
print("开始")
num = 1
while num < 3:
print("123")
num=5
print("结束")
print("开始")
num = 1
while num < 3:
print("123")
num= num +1
# 在循环体内对变量值 加1
print("结束")
# 练习题 重复3次输出 123
print("开始")
num = 1
while num < 4:
print("123")
num= num +1
# 在循环体内对变量值 加1
print("结束")
count = 1
while True:
print(count)
# count = count + 1
count += 2
count += 1
# +=1 每次加1 +=2 每次加2
1.1、练习题
用户登录系统,如果密码错误,则反复让用户输入,知道输入正确才停止
longin = True
while longin:
key_name = input("输入用户名:")
key_pwd = input("输入密码:")
if key_name =="stone" and key_pwd == "123":
print("登录成功")
longin = False
else:
print("登录失败,请重新登录")
猜大小, 比如一个数是66 ,大了 输出大了,,小了输出小了,正确输出 结果正确,退出循环。
num = 66
flag = True
while flag:
key_num = int(input(" 请输入你猜测的数字"))
if key_num >num:
print("猜大了")
elif key_num <num:
print("猜小了")
elif key_num == num:
print("猜对了")
flag = False
使用循环输出 1-100 所以的整数
date = 1
while date <101:
print(date)
date = date+1
输处1-10 除了7 所有的数
data = 0
while data <= 10:
if data !=7:
print(data)
data = data + 1
输处1-100 所以的偶数 和所有的奇数
偶数
date = 0
while date <101:
if date %2 ==0:
print(date)
date = date+1
奇数
date = 0
while date <101:
if date %2 >0:
print(date)
date = date+1
1-100 的所有的数之和
date = 0
total =0
while date <101:
date = date+1
total =total + date
if date ==100:
print(big_sum)
# 第一种方法判断计算 数字的次数,要求计算计数的位数
tatol = 0
data = 0
while data <=100 :
tatol = tatol + data
if data == 100:
print(tatol)
data +=1
# 第二种方法计算 数值的和
输出 10 -1 所有的整数
num = 10
date = True
while date:
print(num)
num = num -1
if num == -1:
date =False
- while循环 猜年龄
While else的用法
GuessDang = 22
count = 0
while count < 3:
guess = int(input("dangjian guess :"))
if guess == GuessDang:
print("You Good!!")
break
elif guess > GuessDang:
print(" it's too small")
else:
print(" it' too bigger")
count += 1
else:
print(" too times ...fack off.")
1、 使用while循环实现输出1-2+3-4+5-6+7.。。。100 的和
判断奇数、偶数 能不能整除
l = 2
sum = 0
while l <= 100:
if (l % 2) == 0: # 偶数
sum += l
else:
sum -= l
l += 1
print(sum)
课程总结
-
if 分支控制语句
-
单条件判断。if. else
-
多条件判断. if. elif else
-
缩进为4个空格
-
-
while 循环控制语句
-
条件循环语句
-
无限循环 while True
-
有限循环. while 条件判断。真假 大小 数量
-
-
while 循环关键字
- break 结束循环
- continue 结束本次循环
-
试题 1-2+3-4+5到100
- 判断取值的数字是否是奇数偶数。奇数- 偶数+
- 运用while 循环 条件判断
3、变量的格式化输出
%s == 字符串
%d == 数字
%f == 浮点数
格式化使用代码
- 使用 %s 关键字实参的方式,
name = input("name:")
age = input("age:")
job = input("job:")
salary = input("salary:")
info = '''
---------- %s info--------
Name: %s
age: %s
job: %s
salary: %s
''' %(name, name, age, job, salary)
# input 输入的默认是 字符串 ,就算是数字,也是字符串,
# 所以使用int() 强制转换成数字。
# %d 能代表数字
# 格式化 输出
name = input("name:")
age = int(input("age:"))
job = input("job:")
salary = input("salary:")
info = '''
---------- %s info--------
Name: %s
age: %d
job: %s
salary: %s
''' % (name, name, age, job, salary)
- 使用 %s 实参的方式
# 两行变一行
print("my name is %s my age is %s "%("dangj","18"))
# 格式化输出 也可以接受 整形类型 ,列表
print("my name is %s my age is %d "%("dangj",18))
print("my name is %s my age is %s "%("dangj",[11,11,22]))
msg = "my name is %s my age is %s" %("dangj","18")
print(msg)
% 补充
%格式化 补充
使用转义 %,使用%的本身意思 ,就是 %% 即可
name ="张三"
messges = "%s ,任务已经完成90%%了"%(name)
print(messges)
key_name ="张三"
messges = "%(name)s ,任务已经完成90%%了"%{"name":key_name}
print(messges)
- 使用 format 调用参数引入关键字参数
使用在监控方面的格式化输出。
{}
加变量名,使用关键字传参
'''
name = input("name:")
age = input("age:")
job = input("job:")
salary = input("salary:")
info2 = '''
name: {Name}
age: {Age}
job: {Job}
salary : {Salary}
'''.format(Name=name,
Age=age,
Job=job,
Salary=salary
)
print(info2)
格式化输出 使用索引位置
name = input("name:")
age = input("age:")
job = input("job:")
salary = input("salary:")
info = '''
--------- info {0} ----
name: {0}
age: {1}
job: {2}
salary: {3}
'''.format(name, age, job, salary)
print(info)
# Format 两种传参方式,一个是位置传参 在不写索引号码的时候可以复用
messges = "我叫{},今年{},上{}级".format("stone",10,5) # 默认使用顺序索引
messges = "我叫{0},今年{1},上{1}级".format("stone",10) # 索引复用
格式化 模板使用
messges="我叫{},今年{}岁,上{}年级"
data1 = messges.format("stone",4,9)
data2 = messges.format("zhangsan",9,1)
messges="我叫%s,今年%d岁,上%d年级"
data1 = messges %('stone',10,10)
data2 = messges %("zhangsan",9,1)
print(data1,end="\n"+data2)
F 的格式化输出
# 字符串输出
# text = f"我叫{'stone'},今年{10},上{6}级"
# print(text)
# 变量输出
# name = "stone"
# age = 10
# num_class = 6
#
# text = f"我叫{name},今年{age},上{num_class}级"
# print(text)
# 数字类型的运算输出 3.6 以上版本
# name = "stone"
# age = 10
# num_class = 6
#
# text = f"我叫{name},今年{age + 2},上{num_class}级"
# text = f"我叫{name},今年{age + 2= },上{num_class}级" # 等于号显示运算过程
# print(text)
# 数字类型的进制转换 3.6 以上版本
# name = "stone"
# age = 22
# num_class = 6
#
# text1 = f"我叫{name},今年{age:#b},上{num_class}级" # 2 进制
# text2 = f"我叫{name},今年{age:#o},上{num_class}级" # 8 进制
# text3 = f"我叫{name},今年{age:#x},上{num_class}级" # 16 进制
#
# print(text1)
# print(text2)
# print(text2)
# 函数输出, 对象的方法
name = "stone"
age = 22
num_class = 6
text1 = f"我叫{name.upper()},今年{age},上{num_class}级"
# 在输出中 占位的可以扩展 函数 或者 对象的方法
print(text1)
总结
1 while else 使用,while 循环内的所有条件均不成立后,使用else的内容
2 格式化输出的部分
-
%s 输出 字符串内%s 表示字符串。%d 表示数字。%f 表示浮点数
-
%s 有两种表示 %(可以是具体的字符传,也可以是变量名),必须一一对应
-
%s 字符串中表示 百分比时,使用2个%% ,进行转义
-
.format 在字符串中使用{} 表示占位
-
字符串内有几个{},那么.format(就应有几个值或者变量名)
-
{}可以使用123 索引数,对应引用的值或者变量名,也可以一个{1},对应多个值。
-
F 格式化输出,在字符串加f 关键字,字符串内使用{} 占位
-
{} 括号内可以是值,变量名
-
{} 括号内可以是数字的运算,运算式的展示 12 +2 = ,数字的进制转换
-
{} 括号内可以是函数,或者对象的方法
-
-
格式化输出的模版
-
data = messages %s()
-
data = messages.format()
3、运算 ,比较 ,逻辑
- 加 减 乘。+ - * 平方**
- 除的方式3种 一个取小数点 /。 一个取余数 % ,一个地板除,不要小数点 //
- 大于 >. 小于 <. 等于= 不等于!=. 大于等于 >=. 小于等于 <= Python2 不等于<>
- 大于 小于 只能用于数字类型之间进行比较
- 相等的比较,只能用于相同的数据类型,不同的数据类型不能进行比较
- 成员运算 in not in. 结果反馈的bool值。
- 逻辑运算 and or not 取非的意思
- 使用()做优先级的标识,优先级 not > and > or ,
浙公网安备 33010602011771号