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…...
【网络】每天掌握一个Linux命令 - iftop
在Linux系统中,iftop是网络管理的得力助手,能实时监控网络流量、连接情况等,帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...
日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻
在如今就业市场竞争日益激烈的背景下,越来越多的求职者将目光投向了日本及中日双语岗位。但是,一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧?面对生疏的日语交流环境,即便提前恶补了…...
基于FPGA的PID算法学习———实现PID比例控制算法
基于FPGA的PID算法学习 前言一、PID算法分析二、PID仿真分析1. PID代码2.PI代码3.P代码4.顶层5.测试文件6.仿真波形 总结 前言 学习内容:参考网站: PID算法控制 PID即:Proportional(比例)、Integral(积分&…...
pam_env.so模块配置解析
在PAM(Pluggable Authentication Modules)配置中, /etc/pam.d/su 文件相关配置含义如下: 配置解析 auth required pam_env.so1. 字段分解 字段值说明模块类型auth认证类模块,负责验证用户身份&am…...
数据库分批入库
今天在工作中,遇到一个问题,就是分批查询的时候,由于批次过大导致出现了一些问题,一下是问题描述和解决方案: 示例: // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...
深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南
🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...
C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj,再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...
Element Plus 表单(el-form)中关于正整数输入的校验规则
目录 1 单个正整数输入1.1 模板1.2 校验规则 2 两个正整数输入(联动)2.1 模板2.2 校验规则2.3 CSS 1 单个正整数输入 1.1 模板 <el-formref"formRef":model"formData":rules"formRules"label-width"150px"…...
Bean 作用域有哪些?如何答出技术深度?
导语: Spring 面试绕不开 Bean 的作用域问题,这是面试官考察候选人对 Spring 框架理解深度的常见方式。本文将围绕“Spring 中的 Bean 作用域”展开,结合典型面试题及实战场景,帮你厘清重点,打破模板式回答,…...
华为OD机试-最短木板长度-二分法(A卷,100分)
此题是一个最大化最小值的典型例题, 因为搜索范围是有界的,上界最大木板长度补充的全部木料长度,下界最小木板长度; 即left0,right10^6; 我们可以设置一个候选值x(mid),将木板的长度全部都补充到x,如果成功…...
