发布于2019-08-05 11:11 阅读(1343) 评论(0) 点赞(1) 收藏(0)
while也称为无限循环、死循环
while 条件:
缩进 循环体
应用领域:音乐播放:单曲循环,列表循环,随机播放(也是有规律的)
登陆界面:……
数学计算:1~100的和,1~100奇数的和/偶数的和……
while True:
print('-------------')
print('西北玄天一片云,')
print('乌鸦落入凤凰群,')
print('满桌都是英雄汉,')
print('谁是君来谁是臣。')
break -- 必须在while循环使用
braek -- 终止当前循环,且其下方的代码不会执行。
while True:
print('-------------')
print('西北玄天一片云,')
print('乌鸦落入凤凰群,')
print('满桌都是英雄汉,')
print('谁是君来谁是臣。')
break # 可放在循环体下面的任何条件后
改变循环体的条件--也可以终止循环
f = True
while f:
print('-------------')
print('西北玄天一片云,')
print('乌鸦落入凤凰群,')
print('满桌都是英雄汉,')
print('谁是君来谁是臣。')
f = False # 可放在循环体下面的任何条件后
continue -- 跳出本次循环,继续下一次循环,其下方的代码不会执行。
(伪装成循环体的最后一行代码)
while True:
print('-------------')
print('西北玄天一片云,')
print('乌鸦落入凤凰群,')
print('满桌都是英雄汉,')
continue # 伪装成最后一行代码,不执行其下面的代码,继续无线循环
print('谁是君来谁是臣。')
练习题
# 利用while语句写出猜大小的游戏: 设定一个理想数字比如:66,让用户输入数字,如果比66大,则显示猜测的结果大了;如果比66小,则显示猜测的结果小了;只有等于66,显示猜测结果正确,然后退出循环。
num = 66 # 设置变量,便于后期维护
while True: # 设定无限循环
s = int(input("你猜猜皇上想到的是哪个整数:")) # 用户交互
if s > num:
print("结果大了")
elif s < num:
print("结果小了")# 输入的数字不满足条件,就无限循环
else: # 满足s = 66 的情况下
print("结果正确")
break # 终止
# 在1题的基础上进行升级:给用户三次猜测机会,如果三次之内猜测对了,则显示猜测正确,退出循环,如果三次之内没有猜测正确,则自动退出循环,并显示‘太笨了你....’。
count = 0
num = 66
while count < 3: # 给变量设置限制
s = int(input("你猜猜皇上想到的是哪个数字:"))
if s > num:
print("结果大了")
elif s < num:
print("结果小了")
else:
print("结果正确")
break
count = count + 1 # 改变变量,使条件变为False,终止循环
else:
print("太笨了你啊")
# 使用while循环输出 1 2 3 4 5 6 8 9 10
# 注意读题,没有7
# 方法一
num = 0
while num < 10:
num += 1
if num == 7:
continue # num为7的时候,结束本次循环,继续下次
print(num)
# 方法二
num = 0
while num < 10:
num += 1
if num == 7:
num += 1 # num为7的时候,7+1
print(num)
# 输出 1-100 内的所有奇数
# 方法一
num = 1
while num < 100:
print(num)
num += 2 # 变量为1,每次都加二,输出的都是奇数
# 方法二
num0 = 1
while num0 < 101:
if num0 % 2 == 1: # 变量除2余1,然后输出
print(num0)
num0 += 1
# 输出 1-100 内的所有偶数
# 方法一
num1 = 0
while num1 < 100:
num1 += 2 # 每次都加二,变量为0,输出的都是偶数
print(num1)
# 方法二
num2 = 1
while num2 < 101:
if num2 % 2 == 0: # 变量2余0,是偶数
print(num2)
num2 += 1
# 求1-2+3-4+5 ... 99的所有数的和
num4 = 0
ss = 0
while num4 < 99:
num4 += 1
if num4 % 2: # 求出奇数,然后相加
ss += num4
else: # 求出偶数,然后奇数减偶数
ss -= num4
print(ss)
占的位置填充时必须一一对应,填充的时候按照顺序填充,由左至右
应用:例如做个名片,注册账号……
%s —— 字符串类型
%d%i —— 数字类型
name = input("name:")
age = input("age:")
addr = input("addr:")
phone = input("phone:")
info = """
-----------info----------
姓名:%s
年龄:%s
公司:%s
电话:%s
------------end-----------
"""%(name,age,addr,phone)
print(info)
%% —— 转义
msg = "%s的学习进度是2%%"%(python)
print(msg)# %%转义是百分之二
f"{格式}" —— 最好用的一种填充
# f"{}"的一种应用
msg = f"""-----------info----------
姓名:{input('name:')}
年龄:{input('age:')}
公司:{input('addr:')}
电话:{input('phone:')}
------------end-----------"""
print(msg)
练习题
# 用户登陆(三次输错机会)提示输入错误次数、剩余输入次数(while和格式化输出的组合)
count = 4
s1 = 0
while count > 1:
count -= 1
id = input("请输入账号:")
psd = input("请输入密码:")
if id == "username" and psd == "password":
print("登陆成功")
break
else:
s1 += 1
print(f"输入错误{s1}次,还可重新输入{count - 1}次")
算数运算符
运算符 | 描述 | 实例 |
---|---|---|
+ | 加,两个对象相加 | a+b=30 |
- | 减,两个对象相减,可能会得到负数 | a-b=-10 |
* | 乘,两数相称或是返回一个被重复若干次的字符串 | a*b=200 |
/ | 除,两个对象相除 | b/a=2 |
% | 取膜,返回除法的余数 | b%a=0 |
** | 幂,返回x的y次幂 | a**b=100000000000000000000L |
// | 整除余,返回商的整数部分 | a//b=0 |
比较运算符
运算符 | 描述 | 实例 |
---|---|---|
== | 等于,比较两个对象是否相等 | a==b返回False |
!= | 不等于,比较两个对象是否不相等 | a!=b返回True |
<> | 不等于,比较两个对象是否不相等 | a<>b返回True |
> | 大于,比较x是否大于y, | a>b返回False |
< | 小于,比较x是否小于y | a<b返回True |
>= | 大于等于,比较x是否大于等于y | a>=b返回False |
<= | 小于等于,比较x是否小于等于y | a<=b返回True |
赋值运算符
运算符 | 描述 | 实例 |
---|---|---|
= | 赋值运算符 | c=a+b,将a+b的运算结果赋值给c |
+= | 加法赋值运算符 | c += a等效于c = c + a |
-= | 减法赋值运算符 | c -= a等效于c = c - a |
*= | 乘法赋值运算符 | c *= a等效于c = c * a |
/= | 除法赋值运算符 | c /= a等效于c = c / a |
%= | 取模赋值运算符 | c %= a等效于c = c % a |
**= | 幂赋值运算符 | c = a等效于c = c a |
//= | 取整除赋值运算符 | c //= a等效于c = c // a |
逻辑运算符
运算符 | 描述 | 实例 |
---|---|---|
and | “与” | a and b返回true |
or | “或” | a or b返回true |
not | “非” | no(a and b)返回false |
and: 都为真,就是真:选择and后面的内容
有一个是假就是假:都为假的时候选择and前面的内容
or: 只要有一个真就是真
两个都是真,选or前面的
两个都为假:选or后面的
not: 不是,非
优先级别:( ) > not > and > or
9 or 8 and 4 and not 4 < 5 or 8
9 or 8 and 4 and False or 8
9 or 4 and False or 8
9 or False or 8
9 or 8
9
not 3<5 and 6>3 or 6 and not True or False and 8 or 90
False and 6>3 or 6 and not True or False and 8 or 90
False and 6>3 or 6 and False or False and 8 or 90
False or 6 and False or False and 8 or 90
False or False or False and 8 or 90
False or False or False or 90
90
成员运算符
运算符 | 描述 |
---|---|
in | 如果在指定的序列中找到值返回True,否则返回False |
not in | 如果在指定的序列中没有找到值返回True,否则返回false |
a = "alex"
if "b" not in a:
print("不在")
else:
print("在")
a = "alex"
if "b" in a:
print("在")
else:
print("不在")
运算符练习题
# 自己先进行推导,之后print(求值)
判断下列逻辑语句的True,False.
1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
# True
not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
# False
求出下列逻辑语句的值。
8 or 3 and 4 or 2 and 0 or 9 and 7
# 8
0 or 2 and 3 and 4 or 6 and 0 or 3
# 4
ascii码 —— 美国自造,最早256位
英文1个字节
不支持中文
Gbk —— 中国制造包含了ascii
中国标准语言——国标
英文8位1个字节,中文16位2个字节
unicode —— 万国码
英文32位4个字节
中文32位4个字节
utf-8 —— 万国码的升级版本 最流行的密码本
英文1个字节8位
欧洲2个字节16位
亚洲3个字节24位
1Bytes = 8bit 1个字节 == 8位
1KB = 1024B
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB
1PB = 1024TB
1EB = 1024PB
作者:嘴巴嘟嘟
链接:https://www.pythonheidong.com/blog/article/4245/521edd81306cc4c4b271/
来源:python黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 python黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-1
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!