Python编程探索:从基础语法到循环结构实践
文章目录
- 前言
- 1. 行与缩进:Python代码的灵魂
- 2. 数据类型的转换:灵活处理数据
- 3. 字符串切片:提取字符串的子部分
- 4. 字符串拼接:连接多个字符串
- 5. 逻辑运算符:处理布尔值
- 6. 成员运算符:检查值是否存在于序列中
- 7. 条件语句:根据条件执行不同代码块
- 8. `for`循环:遍历序列
- 9. `while`循环:基于条件的重复执行
- 总结
前言
Python,作为一种简洁而强大的编程语言,近年来因其易读性、高效性和广泛的应用领域而备受推崇。从数据分析到人工智能,从Web开发到游戏制作,Python都能提供强大的支持。对于初学者来说,掌握Python的基本语法和常用结构是迈向编程世界的第一步。本文将深入探讨Python的行与缩进、数据类型转换、字符串操作、逻辑运算符、成员运算符以及条件语句和循环结构,并通过代码实例化来帮助读者更好地理解这些概念。
1. 行与缩进:Python代码的灵魂
Python对缩进非常敏感,它使用缩进来定义代码块。正确的缩进是Python代码运行的基础,也是Python与其他编程语言的一大区别。以下是一个简单的例子:
a = 1
if a == 1: print("a等于1") print("这是if语句块中的第二行")
else: print("a不等于1")
在上面的代码中,如果a
等于1,则两个print
语句将被执行,因为它们位于if
语句的缩进块中。如果a
不等于1,则执行else
语句块中的print
语句。
2. 数据类型的转换:灵活处理数据
在Python中,你可以使用强制类型转换来改变变量的数据类型。以下是一个数据类型转换的例子:
# 整数和浮点数的相加
b = 100
c = 100.0
bc_sum = b + c # 自动进行类型转换,结果为浮点数
print("bc_sum的数据类型:", type(bc_sum)) # 输出:<class 'float'> # 强制类型转换
bc_sum_int = int(b + c) # 将浮点数转换为整数
print("bc_sum_int的数据类型:", type(bc_sum_int)) # 输出:<class 'int'>
在这个例子中,我们首先展示了Python如何自动处理整数和浮点数的相加操作,并返回浮点数结果。然后,我们使用int()
函数将结果强制转换为整数。
3. 字符串切片:提取字符串的子部分
字符串切片是Python中处理字符串的强大工具。以下是一个字符串切片的例子:
name = "Alice"
print(name[1:3]) # 输出"li",提取的是索引1到2之间的字符(索引从0开始)
在这个例子中,我们使用切片操作[1:3]
来提取字符串name
中索引1到2之间的字符,即"li"。
4. 字符串拼接:连接多个字符串
在Python中,你可以使用加号+
来拼接字符串。以下是一个字符串拼接的例子:
greeting = "Hello"
name = "Alice"
print(greeting + " " + name) # 输出"Hello Alice"
在这个例子中,我们使用加号+
将greeting
和name
两个字符串连接起来,并在它们之间添加了一个空格。
5. 逻辑运算符:处理布尔值
Python支持and
、or
和not
三种逻辑运算符,用于处理布尔值。以下是一个逻辑运算符的例子:
# and运算符
print(True and False) # 输出False # or运算符
print(True or False) # 输出True # not运算符
print(not True) # 输出False
在这个例子中,我们展示了and
、or
和not
三种逻辑运算符的基本用法。
6. 成员运算符:检查值是否存在于序列中
成员运算符in
和not in
用于检查一个值是否存在于序列中(如字符串、列表、元组等)。以下是一个成员运算符的例子:
string = "hello alice"
char = "o"
print(char in string) # 输出True,因为"o"在字符串中
print(char not in string) # 输出False,因为"o"在字符串中
在这个例子中,我们使用in
运算符来检查字符char
是否存在于字符串string
中,并使用not in
运算符来检查它是否不存在于字符串中。
7. 条件语句:根据条件执行不同代码块
条件语句允许你根据条件执行不同的代码块。以下是一个条件语句的例子:
a = 5
if a > 0: print("a是正数")
elif a == 0: print("a是0")
else: print("a是负数")
在这个例子中,我们根据变量a
的值来执行不同的print
语句。
8. for
循环:遍历序列
for
循环用于遍历序列(如列表、字符串、元组等)或其他可迭代对象。以下是一个for
循环的例子:
# 遍历0到4的整数
for i in range(5): print(i) # 嵌套循环
num = 0
for i in range(5): for j in range(5): num += 1 print(f"这是第{num}次循环,i={i}, j={j}, i*j={i*j}")
在这个例子中,我们首先展示了如何使用for
循环来遍历0到4的整数。然后,我们展示了一个嵌套循环的例子,其中外部循环遍历0到4的整数,内部循环也遍历0到4的整数,并计算它们的乘积。
9. while
循环:基于条件的重复执行
while
循环在给定条件为真时重复执行代码块。以下是一个while
循环的例子:
num = 0
while num < 100: num += 1 print(f"这是第{num}次循环") if num == 50: print("终止循环") break # 终止循环
在这个例子中,我们使用while
循环来重复执行代码块,直到变量num
达到100。当num
等于50时,我们使用break
语句来终止循环。
总结
通过本文的介绍和代码实例化,我们深入了解了Python的行与缩进、数据类型转换、字符串操作、逻辑运算符、成员运算符以及条件语句和循环结构。这些基础知识将为你进一步学习Python编程打下坚实的基础。随着你对Python的深入了解和实践经验的积累,你将能够掌握更多高级功能和技巧,并在编程世界中取得更大的成就。
相关文章:
Python编程探索:从基础语法到循环结构实践
文章目录 前言1. 行与缩进:Python代码的灵魂2. 数据类型的转换:灵活处理数据3. 字符串切片:提取字符串的子部分4. 字符串拼接:连接多个字符串5. 逻辑运算符:处理布尔值6. 成员运算符:检查值是否存在于序列中…...

今天要重新认识下注解@RequestBody
在Spring框架中,RequestBody是一个常用的注解,它用于将HTTP请求体中的数据绑定到控制器(Controller)处理方法的参数上。这个注解通常与RESTful Web服务一起使用,在处理POST或PUT请求时尤为常见,因为这些请求…...

北斗有源终端|智能5G单北斗终端|单兵|单北斗|手持机
在当今科技日新月异的时代,智能设备的创新与升级速度令人目不暇接。其中,智能5G终端作为连接数字世界的桥梁,正逐步渗透到我们生活的方方面面。今天,让我们聚焦于一款集尖端科技与实用功能于一身的智能5G设备——QM-L5智能5G单北斗…...

【题解】—— LeetCode一周小结44
🌟欢迎来到 我的博客 —— 探索技术的无限可能! 🌟博客的简介(文章目录) 【题解】—— 每日一道题目栏 上接:【题解】—— LeetCode一周小结43 28.冗余连接 II 题目链接:685. 冗余连接 II 在…...
faiss 用于检索10亿向量(维度768)的方法
faiss 用检索10亿向量(维度768)的方法,注意考虑占用内存空间大小不能超过100G,因为100G已经是很多服务器内存的极限了,有的128G已经是超规格的机器了。价格也就是2000左右(月租)。 要处理 10 亿个 768 维的向量,并且限制内存占用不超过 100G,我们需要使用 FAISS 中的…...

sql专题 之 常用命令
文章目录 查询基础语法查询全表查询选择查询:常量和运算: 条件查询where运算符:、 !、<、>空值:null模糊查询:like逻辑运算:and or not 去重:distinct排序:order by截断和偏移…...

Kubernetes Extended Resource 扩展资源使用简介
Kubernetes 除了提供基于 CPU 和内存的传统计算资源调度外,还支持自定义的 Extended Resource 扩展资源,以便调度和管理其它各种类型的资源。 Extended Resource Extended Resource 扩展资源的创建和使用过程如下图所示: 定义资源ÿ…...

基于STM32的天气时钟项目教学
引言 随着物联网技术的普及,基于STM32的微控制器被广泛应用于各种智能设备的开发。本项目旨在打造一个基于STM32的天气时钟,除了显示当前时间,还可以通过Wi-Fi获取当地天气信息,提供一个实用的生活工具。 环境准备 在开始项目之前…...

神经网络进行波士顿房价预测
前言 前一阵学校有五一数模节校赛,和朋友一起参加做B题,波士顿房价预测,算是第一次自己动手实现一个简单的小网络吧,虽然很简单,但还是想记录一下。 题目介绍 波士顿住房数据由哈里森和鲁宾菲尔德于1978年Harrison …...

C++builder中的人工智能(7)如何在C++中开发特别的AI激活函数?
在当今的AI开发中,人工智能模型正迅速增加。这些模型使用数学函数来执行和学习,以便在传播时优化最佳结果,或在反向传播时选择最佳解决方案。其中之一就是激活函数。也称为转移函数或阈值函数,它决定了神经元的激活值作为输出&…...

更改lvgl图片的分辨率(减少像素)达到减小内存占用的目的
lvgl的内存占比过大,更改图片的分辨率(减少像素)达到减小内存占用的目的,可以用更多的空间去开发其他的功能 -- 由于lvgl中图片占的内存过大,所以需要更改图片的分辨率(降低像素的方式) --注意…...
python的socket库的基本使用总目录
章节总目录 一、Python 实现UDP通讯的简单模型 二、Python 实现TCP通讯的简单模型 三、Python 实现TCP和UDP通讯代码的区别...
golang学习3
Go 语言之旅...
Python解力扣算法题(六)(详解+注释)
# 1.学校打算为全体学生拍一张年度纪念照。根据要求,学生需要按照 非递减 的高度顺序排成一行。 # 排序后的高度情况用整数数组 expected 表示,其中 expected[i] 是预计排在这一行中第 i 位的学生的高度(下标从 0 开始)。 # 给你一…...

【C++】继承和多态常见的面试问题
文章目录 继承笔试面试题1. 什么是菱形继承?菱形继承的问题是什么?2. 什么是菱形虚拟继承?如何解决数据冗余和二义性?3. 继承和组合的区别?什么时候用继承?什么时候用组合? 选择题 多态概念考察…...

入门网络安全工程师要学习哪些内容(详细教程)
🤟 基于入门网络安全/黑客打造的:👉黑客&网络安全入门&进阶学习资源包 大家都知道网络安全行业很火,这个行业因为国家政策趋势正在大力发展,大有可为!但很多人对网络安全工程师还是不了解,不知道网…...

【游戏引擎之路】登神长阶(十二)——DirectX11教程:If you‘re going through hell, keep going!
【游戏引擎之路】登神长阶(十二)——DirectX11教程:If youre going through hell, keep going! 2024年 5月20日-6月4日:攻克2D物理引擎。 2024年 6月4日-6月13日:攻克《3D数学基础》。 2024年 6月13日-6月20日&#x…...

Python列表(一图秒了)
一、概念 所谓的列表是由一些列按照顺序存储的元素组成,区别于C语言中的数组,可以存储多种类型的数据,其中元素之间是没有任何关系的。 注意: 元素放在[]里面的,多个元素之间用 逗号 隔开列表的元素可以修改 定义 …...

雷池社区版 7.1.0 LTS 发布了
LTS(Long Term Support,长期支持版本)是软件开发中的一个概念,表示该版本将获得较长时间的支持和更新,通常包含稳定性、性能改进和安全修复,但不包含频繁的新特性更新。 作为最受欢迎的社区waf,…...

推荐一款功能强大的数据库开发管理工具:SQLite Expert Pro
SQLite Expert Professional是一个功能强大的工具,旨在简化SQLite3数据库的开发。 它是SQLite的一个功能丰富的管理和开发工具,旨在满足所有用户从编写简单SQL查询到开发复杂数据库的需求。 图形界面支持所有SQLite功能。 它包括一个可视化查询构建器&a…...

【Oracle APEX开发小技巧12】
有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...

基于当前项目通过npm包形式暴露公共组件
1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)
🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...
unix/linux,sudo,其发展历程详细时间线、由来、历史背景
sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...

【论文阅读28】-CNN-BiLSTM-Attention-(2024)
本文把滑坡位移序列拆开、筛优质因子,再用 CNN-BiLSTM-Attention 来动态预测每个子序列,最后重构出总位移,预测效果超越传统模型。 文章目录 1 引言2 方法2.1 位移时间序列加性模型2.2 变分模态分解 (VMD) 具体步骤2.3.1 样本熵(S…...

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列,以便知晓哪些列包含有价值的数据,…...
Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?
在大数据处理领域,Hive 作为 Hadoop 生态中重要的数据仓库工具,其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式,很多开发者常常陷入选择困境。本文将从底…...
MinIO Docker 部署:仅开放一个端口
MinIO Docker 部署:仅开放一个端口 在实际的服务器部署中,出于安全和管理的考虑,我们可能只能开放一个端口。MinIO 是一个高性能的对象存储服务,支持 Docker 部署,但默认情况下它需要两个端口:一个是 API 端口(用于存储和访问数据),另一个是控制台端口(用于管理界面…...
日常一水C
多态 言简意赅:就是一个对象面对同一事件时做出的不同反应 而之前的继承中说过,当子类和父类的函数名相同时,会隐藏父类的同名函数转而调用子类的同名函数,如果要调用父类的同名函数,那么就需要对父类进行引用&#…...

【无标题】湖北理元理律师事务所:债务优化中的生活保障与法律平衡之道
文/法律实务观察组 在债务重组领域,专业机构的核心价值不仅在于减轻债务数字,更在于帮助债务人在履行义务的同时维持基本生活尊严。湖北理元理律师事务所的服务实践表明,合法债务优化需同步实现三重平衡: 法律刚性(债…...