python控制结构

比较运算符

布尔类型

布尔值有两个:True和False
例1:

a = True
a

例2:

2 == 3

提示:
1.不要把赋值(一个等号)与比较(两个等号)混淆。
2.Python是区分大小写的,所以True与true是不同的

不等于运算符

不等于运算符:!= 两边比较的项不相等时为True,相等则为False
例1:

1 != 1
False

例2:

3 != 5
True

大于 小于

python中使用<和>运算符来判断一个数字(浮点数或整数)是大于还是小于另一个数
例1:

2 > 4
False

例2:

9.0 > 3
True

大于等于 小于等于

python中使用>=和<=运算符来判断一个数字(浮点数或整数)是大于等于还是小于等于另一个数
例1:

1 >= 4
False

例2:

3 <= 9.0
True

提示:也可以使用比较运算符来按字母顺序比较字符串
例1:

"a" < "b"
True

例2:

"A" < "a"
True

判断语句

if语句

if 3 > 2:
   print("ok")

提示:Python中使用缩进(一行的开始处的空白)来分隔代码块。
而其他语言如c语言则使用大括号来实现分隔代码块,(但在python中必须使用缩进)
例:

if 38 > 4:
   print('38>4')
print('end')       

描述:表达式38>4。于是执行缩进的代码块,所以会输出’38>4’。然后运行if语句之后的代码,并显示‘end’。
注1 :if语句表达式末尾使用冒号,不要忘记这个冒号。
注2 :由于程序包含多行代码,因此应该将其作为单独的代码创建并运行。

num = 15
if num > 5:
   print("5")
   if num <= 47:
      print("47")

注:if语句允许嵌套使用,可用于执行复杂的判断。
内部if语句是外部语句的代码块部分。这是查看是否满足多个条件的一种方法。

else语句

x = 4
if x == 5:
   print('yes')
else:
   print('no')   

注:else语句跟随在if语句之后,当if语句表达式计算结果为False时执行else的代码块。
和if语句一样,块内代码应该缩进。

num = 7
if num == 5:
   print("number is 5")
else:
   if num == 11:
      print("number is 11")
   else:
      if num == 7:
         print("number is 7")
      else:
         print("number isn\'t 5,11 or 7")         

注:可以嵌套使用if/else语句,进行更加复杂的判断。

num = 7
if num == 5:
   print("number is 5")
elif num == 11:
   print("number is 11")
elif num == 7:
   print("number is 7")
else:
   print("number isn\'t 5, 11 or 7")   

注:1. elif(else if的简写)语句是if和else语句使用的快捷方式。一系列if elif语句可以有一个最终的else块,如果if elif语句条件均不成立时会调用else代码块。
2. 在其他编程语句中,elif语句有不同的名称,包括else if,elseif或elsif。但在python中只能用elif,而不能识别else if。

逻辑运算符

且 ,或 ,非 and, or, not

  1. 逻辑运算符:用于为依赖于多个条件的if语句创建更复杂的条件。
  2. python的布尔运算符分别是and,or和not
  3. and 运算符有两个参数,只有两个参数都为True时,结果为True。否则结果为False
  4. or 运算符有两个参数,只要两个参数有一个为True,结果就为True。否则结果为False
  5. not 运算符只有一个参数,参数为True,结果就为False。否则结果为True
    例1:
print(1 == 1 and 23 > 7)
print(2 == 1 and 34 > 3)
print(3 == 2 and 33 > 43)
print(1 == 1 or 23 > 7)
print(2 == 1 or 34 > 3)
print(3 == 2 or 33 > 43)
print(not 2 == 2)
print(not 3 == 7)

注:python的布尔运算符使用单词,而大多数其他语言使用符号(如&&,||和!)

运算符优先级

提示:python的操作顺序与正常数学的顺序相同,先括号,然后幂,然后乘除,再然后加减

运算符优先级列表

  1. 运算符符号 描述
    2 () 小括号
  2. ** 指数(幂)
  3. ~ + - 按位翻转,一元加号和减号(最后两个的方法名为+@和-@)
    • / % // 乘,除,取模(求余数)和取整除(求商)
      •                                        加法减法
        
  4. << 右移,左移运算符

  5. & 位‘AND’
  6. ^ | 位运算符
  7. <= < > >= 比较运算符
  8. < > == != 等于运算符
  9. = %= /= //= -= += *= **= 赋值运算符
  10. is is not 身份运算符
  11. in not in 成员运算符
  12. not or and 逻辑运算符
    例:
x = 4
y = 2
if not 1 + 1 == y or x == 4 and 7 == 8:
   print('yes')
elif x > y:
   print('no')   

while 循环

while循环

1.如果if语句计算结果为True,则if语句代码块会运行一次,如果计算结果为False,则不会运行。
2.while循环语句只要条件为True,while语句内代码块就会重复运行,当条件为False时就会停止while循环,程序继续往后执行
例:

i = 1
while 1 <= 5:
    print(i)
    i += 1
print("finished:")

迭代

迭代:while循环体中的代码被重复执行就被称为迭代
例:

i = 3
while i >= 0:
    print(i)
    i -= 1

while的无限循环

无限循环是一种特殊的while循环,它永远不会停止运行,它的条件总是True
例:

while 1 == 1print("in the loop")    

无限循环的停止可以通过Ctrl-C快捷键或关闭程序来停止程序的执行

break语句

可以使用break语句提前结束while语句。在循环中遇到时,break语句会立即结束循环
例:

i = 0
while 1 == 1:
   print(i)
   i +=1
   if i >= 5:
      print("breaking")
      break
print("finished")

注:在循环外部使用break语句会导致错误

i = 5
while True:
    print(i)
    i -= 1
    if i <= 2:
       break

continue语句

continue语句与break不同的是,continue语句是提前结束本次循环,进入下一次循环。
例:

i = 0
while True:
   i = i + 1
   if i == 2:
      print("skipping 2")
      continue
   if i == 5:
      print("breaking")
      break
   print(i)
print("finished")         

注:continue语句停止当前的迭代,并继续下一个迭代。
在循环外部使用continue语句会导致错误
例:

age = 15
while age >1:
   age = age - 1
   if age == 12:
      continue
   print(age)
print("end")    

列表

1、 列表是python中的另一种类型的对象。它们被用来存储索引的元素列表。
2、列表创建:方括号中用逗号分隔元素来创建一个列表
3、列表中元素的访问:可以通过使用方括号中的索引来访问列表中的元素。
例:

words = ['hello','world','kim']
print(words[0])
print(words[2])

注:列表中的索引是从0开始的,而不是从1开始的
4、空列表的创建:
例:

ds = []
print(ds)

注:大多数情况下,列表中的最后一项不会带逗号。然而,在列表最后一项放置一个逗号是完全有效的,在某些情况下是鼓励的。
例:列表[2,]有1项
5、列表的元素允许包含不同的数据类型
6、列表也可允许嵌套在其他列表中
例:

num = 23
things = ["sthings",0,1,[4,5,num],3]
print(2)

7、引用超出列表值的索引范围将导致IndexError错误
例:

s = [3,4,5]
print(4)

列表操作

1、列表中某个索引处的元素可以重新分配
例:

num = [2,4,5,65,4]
num[1] = 9
print(num)

2、列表可以像字符串一样添加和相乘
例:

num = [1,2,3]
print(num+[7,6,5])
print(num*3)

注:列表和字符串在很多方面是相似的,字符串可以被认为是不能改变的字符列表
例:

num = [33,42,56]
num[1] = 22
print(num)

3、in运算符:要查找某个值是否在列表,可以用in运算符。如果值在列表中出现一次或多次,则返回True,否则返回
False
例:

words = ['spam','egg','spam','kjj']
print('spam' in words)
print('egg' in words)
print('dd' in words)

注:in运算符也用于确定一个字符串是否是另一个字符串的子字符串。
例:

nums = [10,9, 8,7,6,5]
nums[0] = nums[1] - 5
if 4 in nums:
   print(nums[3])
else:
   print(nums[4])   

4、要某个值是否不在列表中,可以使用not操作符
例1:

num = [1,2,3]
print(not 4 in num)
print(4 not in num)
print(not 3 in num)
print(3 not in num)

例2:

letters = ['a','b','z']
if not 'c' in letters:
   print('yes')

列表函数

append方法 在列表末尾添加元素

可以使用append方法将一个元素添加到现有列表的末尾。
例:

num = [1,2,3]
num.append(4)
print(num)

注:append是列表类的一个方法
例:

word = ['hello']
word.append('world')
print(word[1])

len函数 获取列表中元素数量

例:

num = [2,4,6,7,5]
print(len(num))

注:与append方法不同,len是一个正常的函数,而不是一个方法。这意味着它写在被调用的列表之前
例:

letter = ['a','b','c']
letter.append('d')
print(len(letter))

insert方法 在列表中任何位置插入一个新元素

例:

word = ['w3cschool','good']
index = 1
word.insert(index,"is")
print(word)

index方法 获取列表项的第一个匹配项的索引

如果该项目不存在列表中,则会引发ValueError
例:

let = ['p','q','r','s','p','u']
print(let.index('r'))
print(let.index('p'))
print(let.index('z'))

总结

  1. max(list): 返回具有最大值的列表元素
  2. min(list): 返回具有最小值的列表元素
  3. list.count(obj): 返回一个元素在一个列表中出现的次数
  4. list.remove(obj): 从列表中删除一个元素
  5. list.reverse(): 颠倒列表中的元素的顺序

范围(Range)

1、range函数:创建一个顺序的数字列表
例:

number = list(range(10))
print(number)

注:Range本身会创建一个range对象,所以调用list函数将其转换为列表。
2、如果使用一个参数调用range,则会生成0到该参数值的对象。
如果使用两个参数调用范围,则会从第一个值到第二个值的对象
例:

num = list(range(3,8))
print(num)
print(range(20) == range(0,20))

3、range可以有第三个参数,第三个参数决定了产生的序列的间隔
例:

num = list(range(5,20,2))
print(num)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值