当前位置: 首页 > article >正文

Python结构

1.顺序结构

# coding: utf-8
# 顺序结构:从上到下,依次执行
# 赋值运算符的顺序:从右到左
name = "张三"
age = 20
a = b = c = d = 120  # 链式赋值
a,b,c,d = 'room'  # 字符串分解赋值
print(a)
print(b)
print(c)
print(d)

# 输入输出语句也是典型的顺序结构
name1 = input("姓名:")
age1 = eval(input("年龄:"))
print(name1)
print(age1)

2.选择结构

# 选择结构:按照条件选择执行不同的代码段
# 单、双、多分支结构可以互相嵌套使用,内层的分支结构作为外层分支结构的语句块使用
print("———————————————— 单分支结构 ————————————————")
'''
单分支if结构:
if 表达式:
    语句块
'''
# 表达式的值为True时,才执行语句块
# 表达式的值为False时,跳过语句块,执行后面的代码

num = eval(input("数字:"))
# 使用if语句
# 通过比较运算符计算出来的,结果是布尔值类型
if num == 67839:
    print("答对了!")
if num != 67839:
    print("答错了!")

n = 89  # 赋值操作
if n % 2:  # 98%2的余数是0,0的布尔值是False
    print(n,"是奇数")
# 双重否定是肯定
if not n % 2:  # 98%2的余数是0,0的布尔值是False,not False的结果是True
    print(n,"是偶数")

# 判断一个字符串是否是空字符串
x = input("请输入一个字符串:")
if x:  # Python中一切皆为对象,而非空字符串的布尔值为True
    print("x是一个非空字符串")
if not x:  # 空字符串的布尔值为False, not False的结果就为True
    print("x是一个空字符串")

# 表达式也可以是一个单纯的布尔型变量
flag = eval(input("请输入一个布尔类型的值True或False:"))
if flag:
    print("flag的值为True")
if not flag:
    print("flag的值为False")

# 使用if语句时,如果语句块中只有已经代码,可以将语句块直接写在冒号的后面
a = 199
b = 378
if a > b:
    max = a
    print(max)

print("—————————————— 双分支结构 ——————————————")
'''
双分支if...else...结构
if 表达式:
    语句1
else:
    语句2
'''
# 如果表达式的值为True,就执行语句1,否则执行语句2

x = eval(input("号码;"))
if x == 455212:
    print("输对了")
else:
    print("输错了")

# 使用条件表达式进行简化
result = "输对了" if x == 455212 else "输错了"
print(result)

print("输对了" if x == 455212 else "输错了")

print("—————————————— 多分支结构 ——————————————")
'''
多分支结构
if 表达式1:
    语句块1
elif 表达式2:
    语句块2
elif 表达式n:
    语句块n
else:
    语句块n+1
'''
grade = eval(input("成绩:"))
if grade < 0 or grade > 100:
    print("成绩错误!")
elif 0 <= grade < 60:
    print("不及格")
elif (60 >= grade) and (grade < 70):
    print("及格")
elif (70 <= grade) and (grade < 80):
    print("中")
elif 80 <= grade < 90:
    print("良")
else:
    print("优")

print("—————————————————— 嵌套使用 ————————————")
answer = input("吃饭了吗?")
if answer == '吃了':
    food = eval(input("吃了什么菜:"))
    if food == "炸鸡腿":
        print("很美味")
    elif food == "烤全羊":
        print("听着我也想吃了")
    else:
        print("下次我要尝尝")
else:
    print("还没吃")

print("—————————————————— 多个条件的连接 ——————————")
# 使用and连接多个条件判断
# 只有同时满足多个条件,才能执行if后面的语句块
user = input("用户名;")
pwd = input("密码:")
if user == "张三" and pwd == "xs14":
    print("登录成功")
else:
    print("用户名或密码错误")

# 使用or连接多个条件判断
# 满足其中一个条件,就能执行if后面的语句块
score = eval(input("请输入成绩:"))
if 60 <= score < 80 or 80 <= score < 100:
    print("成绩及格了")
else:
    print("成绩不理想")

3.循环结构

# coding: utf-8
# Python中循环结构分为两类;遍历循环结构for、无限循环结构while
print("—————————— 遍历循环结构for ————————————")
'''
遍历循环for结构:
for 循环变量 in 遍历对象:
    语句块
    
for...else...结构:
for 循环变量 in 遍历对象:
    语句块1
else:
    语句块2
'''

# 遍历字符串
# 通过 for 循环逐个访问字符串 'hello' 中的每个字符
for i in 'hello':  # i 是循环变量,它会在每次循环时依次取到字符串中的一个字符
    print(i)  # 循环体,在每次循环时,i 的值会被传递给 print() 函数

print()
# range()函数:Python中的内置函数,产生一个(n,m)的参数序列,包含n,但不包含m
for i in range(1,11):
    # print(i)
    if i % 2 == 0:
        print(i, "是偶数")

print()
# 计算1-10之间的累加和
s = 0  # 用于存储累加和
for i in range(1,11):
    s += i
else:
    print(s)

print()
print("—————————— 100到999之间的水仙花数 ——————————")
'''
153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 *3
水仙花数 = 个位数的立方 + 十位数的立方 + 百位数的立方
'''
for i in range(100,1000):
    a = i % 10  # 个位
    b = i // 10 % 10  # 十位
    c = i // 100  # 百位
    if a ** 3 + b ** 3 + c ** 3 == i :
        print(i)

print("—————————— 无限循环结构while ————————————")
'''
无限循环while结构:
while 表达式:
    语句块
    
while...else...结构:
while 表达式:
    语句块1
else:
    语句块2
    
while循环的四个步骤:
初始化变量=>条件判断=>语句块=>改变变量
'''
answer = input("今天要上课吗?y/n:")  # 初始化变量
while answer == 'y':  # 条件判断
    print("努力学习!")  # 语句块
    answer = input("今天要上课吗?y/n:")  # 改变变量

# 计算1到100的累加和
s = 0
i = 1  # 初始化变量
while i <= 100:  # 条件判断
    s += i  # 语句块
    i += 1  # 改变变量
else:
    print(s)

print()
print("———————————— 使用无限循环模拟用户登录 ——————————————")
i = 0  # 初始化变量
while i < 3:  # 条件判断
    name = input("用户名:")  # 语句块
    pwd = input("密码:")
    if name == '张三' and pwd == '123456':
        print("正在登录中")
        i = 8  # 改变变量
    else:
        if i < 2:
            print("用户名或密码不正确,您还有", 2 - i, "次机会")
        i += 1  # 改变变量
# 单分支的判断
if i == 3:  # 3次都输入错误,循环执行结束
    print("三次均输入错误!")


http://www.kler.cn/a/517513.html

相关文章:

  • 日志收集Day005
  • 接口(完)
  • Linux-day10
  • 技术之翼,创作之心
  • golang网络编程
  • java开发常用指令整理
  • CMake函数参数
  • 前端【8】HTML+CSS+javascript实战项目----实现一个简单的待办事项列表 (To-Do List)
  • MUSE: PARALLEL MULTI-SCALE ATTENTION FOR SEQUENCE TO SEQUENCE LEARNING 笔记
  • Go语言中变量在栈和堆上分配情况分析
  • 论文:深度可分离神经网络存内计算处理芯片
  • [MySQL]数据库表内容的增删查改操作大全
  • Word 中实现方框内点击自动打 √ ☑
  • -bash: ./uninstall.command: /bin/sh^M: 坏的解释器: 没有那个文件或目录
  • Kotlin泛型学习篇
  • 机器学习-线性回归(参数估计之经验风险最小化)
  • Hive之加载csv格式数据到hive
  • 设计模式的艺术-命令模式
  • 嵌入式知识点总结 ARM体系与架构 专题提升(四)-编程
  • 【Java】阿里云OSS上传、删除文件
  • git基础使用命令
  • YOLOv10-1.1部分代码阅读笔记-val.py
  • 《罗宾逊-旅途VR》Build2108907官方学习版
  • Oracle 机器宕机之后启动数据库
  • 大数据,Hadoop,HDFS的简单介绍
  • 从根源分析,调试,定位和解决MacOS ld: unsupported tapi file type ‘!tapi-tbd‘ in YAML file