python基础-流程控制

1.逻辑

  逻辑判断:对于一件事情正确与否的判断,python中用布尔类型真(True)、假(False)做区分;

  根据判断结果的不同去完成的不同操作,就是我们的业务逻辑;

  对于条件是否满足的判断语句,就是条件语句;

  一个逻辑语句是由条件语句+业务语句组成的。

 

2.if语句

  判断一个命题的真实性,如果命题为真,则执行if的逻辑语句;

name_list = []
if name_list:
    print('可以打印')  # 条件语句为假,无输出

  条件语句中可以使用逻辑关系,or、and、not

name_list = []
name = '小王'
if not name_list and name:
    print('可以打印')  # 可以打印

if name_list or name:
    print('可以打印')  # 可以打印

  else语句,是当if语句不满足时所执行代码块的入口;

  添加else语句后,当条件语句判断为假时,可以走else后的业务逻辑;

  else模块是非必须的,可以按需添加;

if 5-5:
    print('0不是对应False')
else:
    print('0对应False')
# 0对应False

  elif (或者如果),对于命题的非第一次的多种判断,每一种判断条件对应一组业务代码;

  是对于首次if判断不满足时,其它条件的判断语句;

num = -1
if num >= 10:
    print('num大于或等于10')
elif 5 <= num < 10:  # 条件语句的数字区间可以直接这样写
    print('num在5-10之间')
elif 0 <= num < 5:
    print('num在0-5之间')
else:
    print('num小于0')

# num小于0

 

3.for循环

  循环:周而复始的变化或运动;

  python中循环的操作也叫做遍历;

  for循环可以将列表、字典、元组、字符串中的元素按顺序进行遍历;

  for item in iterable:

    print(item)            # item就是itertable可遍历对象中的每一个元素;每一个元素遍历后就退出for循环;

for i in 'python':
    print(i)
'''
p
y
t
h
o
n
'''
# 可以和if语句结合使用
for num in [1, 2, 3, 4, 5, 6]:
    if num % 2 == 0:
        print(num)
'''
2
4
6
'''
# for 后的item可以指定为多个变量,比如要遍历字典的items()
dict_test = {'name': 'll', 'age': 23}
for key, value in dict_test.items():
    print(key, value)
'''
name ll
age 23
'''

  python内置函数range() ,返回的是一个一定范围的可迭代对象,元素为整型,可循环;

  for item in range(start, stop, step=1)  包含start、不包含stop,step为数字间隔;

l = range(1, 6)
print(l)  # range(1, 6)
print(type(l))  # <class 'range'>

# range() 只传一个参数,表示默认从0开始,stop值为指定的值
for i in range(6):
    print(i)
'''
0
1
2
3
4
5
'''


r = range(1, 10, 2)
print(r[3:5])  # range(7, 11, 2)


for i in range(7, 11, 2):
    print(i)
'''
7
9
'''
for i in range(7, 10, 2):
    print(i)
'''
7
9
'''

  else在循环中的使用,只有在for循环正常退出时,else后的语句才被执行;

for i in range(3):
    print(i)
else:
    print('for循环结束了')
'''
0
1
2
for循环结束了
'''

  嵌套for循环,for循环体内再增加一个for循环;

for i in range(3):
    print(i)
    print('--------')
    for j in range(4):
        print(j)
    print('========')
'''
0
--------
0
1
2
3
========
1
--------
0
1
2
3
========
2
--------
0
1
2
3
========
'''

for i in range(3):
    for j in range(4):
        print(i+j, end='')  # 012312342345

 

4.while循环

  以一定的条件为基础的循环,条件满足则无限循环,条件不满足则退出循环;

count = 1
while count < 5:
    print(count, end='')
    count += 1
# 1234

# 可以用while循环替代for对列表的遍历
list_test = ['python', 'go', 'java']
index = 0
while index < len(list_test):
    print(list_test[index], end=',')
    index += 1
# python,go,java,

# 用while循环计算1-100累加计算
num = 1
total = 0
while num < 101:
    total += num
    num += 1
print(total)  # 5050

# 用for循环计算1-100累加计算
total_new = 0
for i in range(101):
    total_new += i
print(total_new)  # 5050

# 计算1-1000奇数和
num = 0
total_n = 0
while num < 1001:
    if num % 2 != 0:
        total_n += num
    num += 1
print(total_n)  # 250000

  continue和break

  在循环体中遇到continue时,会停止本次循环,进行下一次循环;

  break可以使循环停止;

# 找出所有男同学
student_list = [
    {'name': 'll', 'sex': '男'},
    {'name': 'uu', 'sex': '女'},
    {'name': 'tt', 'sex': '男'},
]
man = []
for stu in student_list:
    if stu.get('sex') == '女':
        continue
    man.append(stu)
print(man)  # [{'name': 'll', 'sex': '男'}, {'name': 'tt', 'sex': '男'}]

# 打印到指定数字
for i in range(10):
    if i == 4:
        break
    print(i)
else:
    print('循环已退出')  # 可以看到break导致循环停止,else后的语句也不会输出
'''
0
1
2
3
'''
for i in range(10):
    print(i)
else:
    print('循环已退出')
'''
0
1
2
3
4
5
6
7
8
9
循环已退出
'''
# 嵌套循环,break只作用于自己循环内
for i in range(3):
    for j in range(4):
        if j == 3:
            break
        print(i+j, end='')
# 012123234
# 九九乘法表
for i in range(1, 10):
    for j in range(1, i+1):
        print(f'{j}x{i}={i*j}', end=' ')
    print()
'''
1x1=1 
1x2=2 2x2=4 
1x3=3 2x3=6 3x3=9 
1x4=4 2x4=8 3x4=12 4x4=16 
1x5=5 2x5=10 3x5=15 4x5=20 5x5=25 
1x6=6 2x6=12 3x6=18 4x6=24 5x6=30 6x6=36 
1x7=7 2x7=14 3x7=21 4x7=28 5x7=35 6x7=42 7x7=49 
1x8=8 2x8=16 3x8=24 4x8=32 5x8=40 6x8=48 7x8=56 8x8=64 
1x9=9 2x9=18 3x9=27 4x9=36 5x9=45 6x9=54 7x9=63 8x9=72 9x9=81
'''
i = 1
while i <= 9:
    j = 1
    while j <= i:
        print(f'{j}x{i}={i*j}', end=' ')
        j += 1
    i += 1
    print()
'''
1x1=1 
1x2=2 2x2=4 
1x3=3 2x3=6 3x3=9 
1x4=4 2x4=8 3x4=12 4x4=16 
1x5=5 2x5=10 3x5=15 4x5=20 5x5=25 
1x6=6 2x6=12 3x6=18 4x6=24 5x6=30 6x6=36 
1x7=7 2x7=14 3x7=21 4x7=28 5x7=35 6x7=42 7x7=49 
1x8=8 2x8=16 3x8=24 4x8=32 5x8=40 6x8=48 7x8=56 8x8=64 
1x9=9 2x9=18 3x9=27 4x9=36 5x9=45 6x9=54 7x9=63 8x9=72 9x9=81 
'''
# 求100以内,能被3或能被7整除、且不能同时被3和7整除的数字
# 不能同时被3和7整除,即不能被21整除的数
num_list = []
for i in range(101):
    if i % 3 == 0 or i % 7 == 0:
        if i % 21 != 0:
            num_list.append(i)
print(len(num_list))  # 39

 

总结

  python基础-流程控制

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python基础-流程控制 - Python技术站

(0)
上一篇 2023年4月2日 下午4:36
下一篇 2023年4月2日

相关文章

  • python基础-列表、元组常用方法

    元组是不可变数据类型,可用方法较少,所以可以直接和列表一同对比记忆; 1.len() 方法在列表、元组中的使用   求列表、元组的长度;   len() 方法可以统计除了数字外的任意数据类型的长度;    2.列表、元组的累加累乘   重复列表、元组中的元素;    3.成员判断符号in在列表、元组中的使用    4.列表内置函数append()   向列表…

    2023年4月2日
    00
  • python基础-面向对象

    1.面向对象   面向对象编程是在面向过程编程的基础上发展来的,它比面向过程编程具有更强的灵活性和扩展性,所以可以先了解下什么是面向过程编程:   面向过程编程的核心是过程,就是分析出实现需求所需要的步骤,通过函数一步一步实现这些步骤,接着依次调用即可,再简单理解就是程序   从上到下一步步执行,从头到尾的解决问题;   而面向对象编程是把构成事物的整个需求…

    2023年4月2日
    00
  • python基础-较复杂数据类型预览

    1.初识列表   列表就是队列;   列表是一种有序的,且内容可重复的数据类型;   用list代表列表,也可以用list()定义一个列表,同时定义列表可以直接使用 [ ];   python中列表是一个无限制长度的数据结构;(但为了响应速度,也应避免列表中数据过大);   列表中可以存储各种数据类型,数字、字符串、布尔型、None、另一个列表等。     …

    2023年4月2日
    00
  • python基础-模块和包

    1.什么是python的包   包就是一个文件夹,里面放着一个个py文件或子包;   在包中可以被调用的一个个py文件,我们叫做模块;      如上,test就是一个包、two.py就是test下的一个模块,child是子包,结构和test包一样;   包的身份证     可以看到test下还有一个__init__.py命名的文件,是python包中必须存…

    2023年4月2日
    00
  • python基础-数字类型

    1.数字的简单运算   常用运算符     +, -, *,  /, %, //,**          = 就是赋值运算符,在变量介绍中已提及过,a=13;     这里要说下赋值运算符的参数运算,     +=, -=, *=, /=, //=, %=      a += b –> a = a + b  参数赋值可以使代码更整洁,可读性更强   …

    2023年4月2日
    00
  • python基础–简单数据类型预览

    为了适应更多的使用场景,将数据划分为多种类型,每种类型都有各自的特点和使用场景, 帮助计算机高效的处理和展示数据。(比如数字用于数学运算、字符串用于信息传递、页面文字展示等) 1.数字类型   整型     整型就是我们说的整数,0也是整数,是一种特殊的整数;      int 既是整型的代表,又是定义整型的函数;      定义一个整型,并不一定必须用in…

    2023年4月2日
    00
  • python基础-常用内置包

      内置包是python自带的一些功能模块,有需求时可以在自己文件中直接导入使用。   1.datetime包   python中的时间包,可以在业务开发中辅助我们处理时间信息; # datetime可以获取当前时间 from datetime import datetime re = datetime.now() print(re) # 2022-12-0…

    2023年4月2日
    00
  • python基础-字典常用操作

    1.通过key获取value   dict = {key1: value1, key2:value2}   dict[‘key1’] 可获取到key1对应的value1   person = {‘name’: ‘tt’, ‘age’: 13} print(person[‘age’]) # 13 test_dict = {‘name’: ‘ll’, ‘age’…

    2023年4月2日
    00
合作推广
合作推广
分享本页
返回顶部