python基础语法二

news2024/11/30 2:43:07
一、条件判断
1.1 if…else…语句

if…else… 字面意思就是 如果…否则…

num = 3
# 通过取模运算判断num是否能被2整除
if num % 2 == 0:
	print(str(num) + "是一个偶数")
else:
    print(str(num) + "是一个奇数")

注意两条print语句前面的缩进

1.2 elif

当你有三个及以上的判断条件的时候就很有必要使用elif来做多次判断

score = 59
if score < 60:
    print("您的考试成绩不及格")
elif score <70 and score >=60:
	print("您的考试成绩合格")
elif score < 90 and score >= 70
    print("您的考试成绩良好")
else:
    print("您的考试成绩优秀")
1.3 if 条件嵌套

嵌套循环可以嵌套无数层,但通常我们都建议尽量减少嵌套的层数,以增加代码的可读性。

score = 100
if score >= 60:
	if score < 70:
		print("您的考试成绩为合格")
	elif score < 90:
		print("您的考试成绩为良好")
	else:
		print("您的考试成绩为优秀")
else:
	print("您的考试成绩不及格")
1.4 与逻辑运算符组合
if age > 18 and age < 60:
	print("你已经不是个孩子啦,该去工作啦")

## 上下两中写法都可以
age = 22
if 18 < age < 60:
	print("你已经不是个孩子啦,该去工作啦")
1.5 自动类型转换

if 和 elif 的后面总是跟着一个表达式,这个表达式的结果必须是True或者False,如果表达式运算出来的

结果不是一个布尔值,则会自动将结果转换为布尔值,无论它是什么类型的值。转换的结果遵循布尔转换规律。

count = 0
if count:
	print("条件成立")
else:
	print("条件不成立")

注意:count 为 0值、None 和空字符串转换为布尔值后都是False

二、循环控制
2.1 while循环语句
lap = 0
while lap < 10:
	lap += 1
	print("我跑完了第" + str(lap + 1) + "圈")

在这里插入图片描述
在这里插入图片描述

2.2 for循环语句

for循环可以用来遍历序列,序列指的是一个可迭代的有序的集合,比如字符串就是一个序列

seq = "hello"
for s in seq:
	print(s)

在这里插入图片描述

我们可以修改一下之前写的跑圈的while循环,改用for循环加range函数来实现:

for lap in range(10):
	print("我跑完了第" + str(lap + 1) + "圈")
2.3 嵌套循环

嵌套循环:顾名思义就是循环里面再循环

##在控制台中打印出指定边长的长方形或者正方形图案
# 指定长方形的宽和高
width, height = 10, 5
# 因为是从上往下开始打印,所以先遍历高度
for i in range(height):
	for j in range(width):
		print("*", end="")
	print()

在这里插入图片描述

打印出这样一个九九乘法表

for i in range(1, 10):
    for j in range(1, i + 1):
        print("%s*%s=%s" % (j, i, i * j), end=" ")
    print()

在这里插入图片描述

2.4 break和continue

有时候在循环内部,我们需要临时略过某一次循环或者干脆跳出整个循环,这时候就需要用到break和 continue。

使用for循环和continue来打印出10以内的所有奇数相加的式子,并求出它们 的和

total = 0
for i in range(10):
    if i % 2 == 0:
        continue
    print(i, end=" + ")
    total += i
print(" = %s" % total)

## 1 + 3 + 5 + 7 + 9 +  = 25

关键字break用来打断整个循环并跳出

给一个字符串,这个字符串是一个小数,要求打印出小数的整数部分

s = "238.9237834829"
for i in s:
    if i == '.':
        print()
        break
    print(i, end='')

在这里插入图片描述

三、智能密码锁程序

最近几年很流行的智能密码锁程序,除了可以用指纹开锁、人脸识别开锁外,都会有密码开锁的功能,以防万一。密码开锁功能是这样的,首先设定好密码,以后每次开锁的时候只要输入的数字中含有设定 的密码,就视为解锁成功。这样的设定是为了防止别人的窥探,具有更高的安全性。

首先,由于涉及到了输入,先来了解一下Python内置的输入函数: input

password = input("请设置您的密码")

在执行到这行代码时,控制台就变成光标闪烁的状态,用户可以用键盘进行字符的输入,输入完成后,再输入一个回车表示输入结束,输入的字符串赋给等号左边的变量。

# 设置初始密码
password = "123"
while True:
    pwd = input("请输入您想要设置的密码:")
# 如果没有输入任何密码,则使用初始密码作为密码
    if not pwd:
        break
    confirm_password = input("请再次输入您的密码:")
    if pwd == confirm_password:
        password = pwd
        break
    else:
        print("您两次输入的密码不一致,请重新输入。")
print("您的初始密码已设置为:" + password)
print("进入开锁程序。。。")
# 开锁
while True:
    input_pwd = input("请输入您的密码:")
# 判断输入的密码中是否包含密码
    if password in input_pwd:
        print("开锁成功!")
        break
    else:
        print("您输入的密码有误,请重新输入")

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/152461.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

DP4809国产双通道耳机音频功率放大器芯片兼容替代LM4809

目录DP4809简介参考原理图DP4809芯片特性DP4809简介 DP4809是带关机功能的双通道耳机音频功率放大器芯片。在5V输入工作电压下&#xff0c;负载 16Ω时&#xff0c;平均输出功率为 140mW&#xff0c;总谐波失真 THDN 小于0.1%。当 SHUTDOWN 管脚电压为 GND 时&#xff0c;芯片…

小程序技术科普:运行机制安全机制

接触小程序有一段时间了&#xff0c;总得来说小程序开发门槛比较低&#xff0c;但其中基本的运行机制和原理还是要懂的。 了解小程序的由来 在小程序没有出来之前&#xff0c;最初微信WebView逐渐成为移动web重要入口&#xff0c;微信发布了一整套网页开发工具包&#xff0c;称…

Windows安装Pytorch+CUDA环境

文章目录前言创建Python虚拟环境安装CUDA安装Pytorch参考资料前言 本文将介绍使用 conda 创建Python虚拟环境&#xff0c;安装Pytorch和CUDA依赖。 创建Python虚拟环境 conda常用命令&#xff1a; conda create -n poppy_leo_tf python3.7 # 创建虚拟环境 conda activate p…

grafana关闭缓存

如果把Prometheus配置文件中的一些端口删除再重启服务&#xff0c;虽然Prometheus中更新了数据&#xff0c;但是grafana中的缓存会存在很长时间。 在官方文档[数据源管理|格拉法纳文档 (grafana.com)](https://grafana.com/docs/grafana/latest/administration/user-managemen…

Leetcode - 19 - 删除链表的倒数第 N 个结点

19. 删除链表的倒数第 N 个结点 题目描述 给你一个链表&#xff0c;删除链表的倒数第 n 个结点&#xff0c;并且返回链表的头结点。 示例1&#xff1a; 输入&#xff1a;head [1,2,3,4,5], n 2 输出&#xff1a;[1,2,3,5]示例 2&#xff1a; 输入&#xff1a;head [1],…

【Dash搭建可视化网站】项目11:世界自杀率数据看板

世界自杀率数据看板1 项目效果图2 项目架构3 文件介绍和功能完善3.1 assets文件夹介绍3.2 app.py和index.py文件完善3.3 header.py文件完善3.4 api.py/api.ipynb文件完善3.4.1 获取Dropdown组件中的下拉标签信息3.4.2 获取Rangeslider组件中的时间区间3.4.3 获取Checklist组件中…

【 Vue3 + Vite + setup语法糖 + Pinia + VueRouter + Element Plus 第五篇】【完结篇附源码】

在第四篇中我们学习了mixin 公共方法封装&#xff0c; VueRouter 的使用以及配置权限路由&#xff0c;本期我们将讲述 Pinia,并使用 Pinia 和 Axios接口数据完成登录功能以权限路由改造 本期需要掌握的知识如下: Pinia 在项目中的使用及 持久化使用 Pinia 和 Axios 完成 登录 …

VIMA: General Robot Manipulation with Multimodal Prompts

Paper name VIMA: General Robot Manipulation with Multimodal Prompts Paper Reading Note URL: https://arxiv.org/pdf/2210.03094.pdf Project URL: https://vimalabs.github.io/ ICLR review URL: https://openreview.net/forum?idhzjQWjPC04A TL;DR ICLR 2023 在投…

动态 json 转化序表

【问题】Hi,I have a problem very similar tohttp://community.jaspersoft.com/questions/844023/need-help-looping-throu…,but I can’t just change the json file as done by the person asking that question.Any help would be greatly appreciated.----I am trying to…

深入学习IO多路复用select/poll/epoll实现原理

这里写自定义目录标题参考概述1. Linux 怎样处理网络请求1.1 阻塞 IO1.2 非阻塞 IO1.3 IO 多路复用2. 详解 select、poll、epoll 实现原理2.1 select 实现原理2.2 poll 实现原理3. 总结参考 深入学习IO多路复用select/poll/epoll实现原理 概述 Linux 服务器处理网络请求有三…

Java基础算法每日5道详解(4)

101. Symmetric Tree 对称树 Given the root of a binary tree, check whether it is a mirror of itself (i.e., symmetric around its center). Example 1: Input: root [1,2,2,3,4,4,3] Output: trueExample 2: Input: root [1,2,2,null,3,null,3] Output: falseleetco…

Linux常用命令——nl命令

在线Linux命令查询工具(http://www.lzltool.com/LinuxCommand) nl 在Linux系统中计算文件内容行号 补充说明 nl命令读取 file 参数&#xff08;缺省情况下标准输入&#xff09;&#xff0c;计算输入中的行号&#xff0c;将计算过的行号写入标准输出。在输出中&#xff0c;n…

牛啊~ 长这么大还是头一次见24W字的SpringBoot从入门到实战文档

牛啊&#xff01;长这么大还是头一次见24W字的SpringBoot从入门到实战文档&#xff01; 不服还真不行&#xff0c;因为这份文档包含的内容是又全又新&#xff0c;而且还特别高深&#xff0c;从入门到实战的内容全都有&#xff01;&#xff01; 继续往下看&#xff1a; 本文档从…

EMQ设定ACL规则来控制客户端对主题的订阅权限

实现原理&#xff1a;EMQ可以通过制订ACL规则&#xff0c;校验客户端每个发布(Publish)/订阅(Subscribe) 的权限 本次采用的是EMQ Mnesia ACL。使用 EMQ X 内置的 Mnesia 数据库存储 ACL 规则 测试过程&#xff1a; 1本次实验环境&#xff0c;1个服务端&#xff08;发布1个主…

NumPy一维数组、二维数组与Pandas的Series、DataFrame行列结构和横纵方向的统一说明

最近在这个问题上耽误了一些时间&#xff0c;原因是之前个人理解上出了一些偏差&#xff0c;又受到错误文章的误导&#xff0c;把这个问题搞复杂了&#xff0c;现在统一梳理一下。在展开之前&#xff0c;先明确说明的是&#xff1a;NumPy的二维数组与Pandas的DataFrame&#xf…

7、Javaweb_tomcatservlet

web相关概念 1. 软件架构 1. C/S&#xff1a;客户端/服务器端 2. B/S&#xff1a;浏览器/服务器端 2. 资源分类 1. 静态资源&#xff1a;所有用户访问后&#xff0c;得到的结果都是一样的&#xff0c;称为静态资源.静态资源可以直接被浏览器解析 * 如&am…

2023年最全盘点 | 16款跨平台应用程序开发框架

近年来小程序技术被微信及其生态应用带的如火如荼的&#xff0c;开发者的世界里&#xff0c;小程序的技术非常受关注&#xff0c;特别在流量承接及跨端开发方面&#xff0c;均受到不同规模的企业关注及积极实践。 2023年&#xff0c;小程序依然很火&#xff0c;但却有了一些不…

元宇宙产业委MCC|于佳宁:加密资产摆脱不了周期性规律

2022年&#xff0c;加密行业面临寒冬&#xff0c;加密货币市场总价值大量缩水&#xff0c;降逾1.45万亿美元&#xff0c;期间多家加密公司接连倒塌&#xff0c;引发市场连锁效应。 加密货币总市值降逾1.45万亿美元 根据CoinMarketCap数据&#xff0c;加密货币总市值(Total Cry…

【服务器数据恢复】某品牌DS系列服务器RAID5数据恢复案例

服务器数据恢复环境&#xff1a; 某单位一台某品牌DS系列服务器连接4个扩展柜&#xff1b; 50块磁盘组建两组RAID5&#xff0c;其中一组由27块磁盘组建的RAID5存放的是Oracle数据库文件&#xff1b; 上层一共划分11个卷。 服务器故障&#xff1a; 磁盘故障导致存放Oracle数据库…

JavaScript类和对象

1、面向对象与面向过程 1.1 面向过程编辑POP(Process-oriented programming) 面向过程就是分析出解决问题所需要的步骤&#xff0c;然后用函数把这些步骤一步一步实现&#xff0c;使用的时候再一个一个的依次调用就可以了。面向过程&#xff0c;就是按照我们分析好的步骤&…