一、循环选择和运算符

一、运算符

  1、算数运算符

运算符 描述 示例
+ 10+10=20
- 10-10=0
* 10*10=100
/ 100/10=10
** 幂运算 10**10=10000000000
% 取余数 10%3=1
// 取整除,结果是商的整数部分,不四舍五入的哦 10//6=1

 

  2、比较运算符

  判断的结果(True或者False)使用变量接收。a=10,b=20

运算符 描述 示例
== 等于,判断是否相等 a==b;False
!= 不等于,判断是否不相等 a!=b:True
> 大于,判断是否大于 a>b;False
< 小于,判断是否小于 a<b;True
>= 大于或等于,判断是否大于或者等于 a>=b;False
<= 小于或等于,判断是否小于或等于 a<=b;True

  3、成员运算符

  主要是in (在)和 not in(不在).也是判断类型的,成立就返回True。可以判断字符串中是否函数某字符或字符串,字典中有无某关键字(key),元组、列表、集合中有无某一元素;

list = [1,2,'w',['b','c']]
print(1 in list)#True
tu = ('2',1,'shagfua')
print(2 in tu)#False
dict = {'n':'nnnnnn','k':'kkkkk'}
print('n' in dict)#True
str = 'ashugdlvagfiga'
print('vag' in str)#True
se = {'n','k'}
print('n' not in se)#False

  4、赋值运算符

运算符 描述 示例 解释
= 简单的复制运算,让某个变量等于某值 c=10; 令变量c=10
+= 加法赋值,加了再赋值 a+=10 a=a+10,
-= 减法赋值,减了再赋值 a-=1 a=a-1
*= 乘法赋值,乘了再赋值 a*=2 a=a*2
/= 除法赋值,除了再赋值 a/=5 a=a/5
%= 取余赋值,先取余再赋值 a%=5 a=a%5
**= 幂运算赋值,先进行幂运算再赋值 a**=2 a=a**2
//= 整除赋值,先整除再赋值 a//=3 a=a//3

  5、逻辑运算符

  and(与),or(或),not(非)

  and 全真为真,否则为假

  or 全假为假,否则是真

  not 原本是假,结果是真;原本是真,结果是假。

  设a=10,b=20

运算符 逻辑表达式 描述 示例
and x and y 布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 (a and b) 返回 20
or x or y 布尔"或" - 如果 x 是 True,它返回 x 的值,否则它返回 y 的计算值。 (a or b) 返回 10。
not not x 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 not(a and b) 返回 False

二、循环

  循环体:需要循环执行的语句

  1、while循环

  1)用法

  用法:while 条件:循环体

  只要满足条件就会一直循环下去。直到天荒地老海枯石烂ha e ha ha e ha e a~示例(死循环):

i=1
while True:
    print(i)
    i += 1

  如果需要提前结束循环,可以使用break或者continue。这两个关键词的作用不一样,continue是结束当前这一次循环,跳到下一次循环当中,循环在本质上没有全部结束。宏观上看结束循环次数少了一次。break是直接跳所在一层循环。这层循环不再执行。

cont=0
i = 0
while i<10:
    i += 1
    if i==5:
        continue
    cont += 1
print('循环执行了%d次'%cont)
'循环执行了9次'
cont=0
i = 0
while i<10:
    i += 1
    if i==5:
        break
    cont += 1
print('循环执行了%d次'%cont)
'循环执行了4次'

  2)while...else...

  过程:当循环体无异常地执行完,(break算作异常)将执行else中的代码,否则不执行。比如说可以用在用户登录时候的提示;示例:

cont = 0
names = {'xiaoming':'123456','xiaoxiong':'123456'}
while cont < 3:
    name = input('>>>用户名:')
    pwd = input('>>>:密码:')
    if name in names and pwd == names[name]:
        print('登录成功')
        break
    else:
        print('登录失败')
    cont += 1
else:
    print('账号多次登录失败,请稍后再试')

  2、for循环

  range:范围,可跌代对象。range有三个参数,分别是起始数,最大数,和步长。range范围包括起始数,不包括最大数,起始数和最大数可以不填写。起始数不写默认为0,步长不写默认为1。

  for循环可以遍历任何序列的项目,如一个列表或者一个字符串。for循环的语法格式示例:

for i in range(10):
    print(i)
#i每次从range范围(0到10,不包括10)中取值输出0-9这十个数字

  for遍历列表:

lis = [1,2,3,4,5,6]
for item in lis:
    print(item)
# item 每次从列表lis中取值,列表中的元素全部取过之后,循环结束

  for遍历字典:

dict = {'a':''}
for item in dict:
    print(item)
# item 每次从字典dict中取值,字典中的元素全部取过之后,循环结束

  for遍历元祖:

tu = ('a','b')for item in tu:
    print(item)
# item 每次从元祖tu中取值,元祖中的元素全部取过之后,循环结束

  for遍历字符串:

str = 'abcdefghijklmnopqrstuvwxyz'
for char in str:
    print(char)
# item 每次从字符串中取值,字符串中的元素全部取过之后,循环结束

  for遍历集合:

set = {'a','b'}
for item in set:
    print(item)
# item 每次从集合中取值,集合中的元素全部取过之后,循环结束

三、选择

在Python中,选择只有与if相关语句,没有switch。最简单的选择:

str = '1'
if str == '1':
    print('条件成立')
else:
    print('条件不成立')

if后面的添加成立,进入条件内的代码块,否则进入else后面的代码块。同理,在下面的代码中也是这样。

grade = int(input('>>>输入成绩():'))
if grade > 100 or grade < 0:
    print('数据错误')
elif grade >= 80:
    print('优秀')
elif grade>=70 and grade<80:
    print('良好')
elif grade<70 and grade>=60:
    print('及格')
else:
    print('不及格')

另外,上例每个选择分支内都可以嵌套选择,想套几层就几层。

 

posted @ 2019-03-04 14:10  Darius-xiong  阅读(257)  评论(0编辑  收藏  举报