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

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"

在这个例子中,我们使用加号+greetingname两个字符串连接起来,并在它们之间添加了一个空格。

5. 逻辑运算符:处理布尔值

Python支持andornot三种逻辑运算符,用于处理布尔值。以下是一个逻辑运算符的例子:

# and运算符  
print(True and False)  # 输出False  # or运算符  
print(True or False)  # 输出True  # not运算符  
print(not True)  # 输出False

在这个例子中,我们展示了andornot三种逻辑运算符的基本用法。

6. 成员运算符:检查值是否存在于序列中

成员运算符innot 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. 行与缩进&#xff1a;Python代码的灵魂2. 数据类型的转换&#xff1a;灵活处理数据3. 字符串切片&#xff1a;提取字符串的子部分4. 字符串拼接&#xff1a;连接多个字符串5. 逻辑运算符&#xff1a;处理布尔值6. 成员运算符&#xff1a;检查值是否存在于序列中…...

今天要重新认识下注解@RequestBody

在Spring框架中&#xff0c;RequestBody是一个常用的注解&#xff0c;它用于将HTTP请求体中的数据绑定到控制器&#xff08;Controller&#xff09;处理方法的参数上。这个注解通常与RESTful Web服务一起使用&#xff0c;在处理POST或PUT请求时尤为常见&#xff0c;因为这些请求…...

北斗有源终端|智能5G单北斗终端|单兵|单北斗|手持机

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

【题解】—— LeetCode一周小结44

&#x1f31f;欢迎来到 我的博客 —— 探索技术的无限可能&#xff01; &#x1f31f;博客的简介&#xff08;文章目录&#xff09; 【题解】—— 每日一道题目栏 上接&#xff1a;【题解】—— LeetCode一周小结43 28.冗余连接 II 题目链接&#xff1a;685. 冗余连接 II 在…...

faiss 用于检索10亿向量(维度768)的方法

faiss 用检索10亿向量(维度768)的方法,注意考虑占用内存空间大小不能超过100G,因为100G已经是很多服务器内存的极限了,有的128G已经是超规格的机器了。价格也就是2000左右(月租)。 要处理 10 亿个 768 维的向量,并且限制内存占用不超过 100G,我们需要使用 FAISS 中的…...

sql专题 之 常用命令

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

Kubernetes Extended Resource 扩展资源使用简介

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

基于STM32的天气时钟项目教学

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

神经网络进行波士顿房价预测

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

C++builder中的人工智能(7)如何在C++中开发特别的AI激活函数?

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

更改lvgl图片的分辨率(减少像素)达到减小内存占用的目的

lvgl的内存占比过大&#xff0c;更改图片的分辨率&#xff08;减少像素&#xff09;达到减小内存占用的目的&#xff0c;可以用更多的空间去开发其他的功能 -- 由于lvgl中图片占的内存过大&#xff0c;所以需要更改图片的分辨率&#xff08;降低像素的方式&#xff09; --注意…...

python的socket库的基本使用总目录

章节总目录 一、Python 实现UDP通讯的简单模型 二、Python 实现TCP通讯的简单模型 三、Python 实现TCP和UDP通讯代码的区别...

golang学习3

Go 语言之旅...

Python解力扣算法题(六)(详解+注释)

# 1.学校打算为全体学生拍一张年度纪念照。根据要求&#xff0c;学生需要按照 非递减 的高度顺序排成一行。 # 排序后的高度情况用整数数组 expected 表示&#xff0c;其中 expected[i] 是预计排在这一行中第 i 位的学生的高度&#xff08;下标从 0 开始&#xff09;。 # 给你一…...

【C++】继承和多态常见的面试问题

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

入门网络安全工程师要学习哪些内容(详细教程)

&#x1f91f; 基于入门网络安全/黑客打造的&#xff1a;&#x1f449;黑客&网络安全入门&进阶学习资源包 大家都知道网络安全行业很火&#xff0c;这个行业因为国家政策趋势正在大力发展&#xff0c;大有可为!但很多人对网络安全工程师还是不了解&#xff0c;不知道网…...

【游戏引擎之路】登神长阶(十二)——DirectX11教程:If you‘re going through hell, keep going!

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

Python列表(一图秒了)

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

雷池社区版 7.1.0 LTS 发布了

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

推荐一款功能强大的数据库开发管理工具:SQLite Expert Pro

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

linux之kylin系统nginx的安装

一、nginx的作用 1.可做高性能的web服务器 直接处理静态资源&#xff08;HTML/CSS/图片等&#xff09;&#xff0c;响应速度远超传统服务器类似apache支持高并发连接 2.反向代理服务器 隐藏后端服务器IP地址&#xff0c;提高安全性 3.负载均衡服务器 支持多种策略分发流量…...

rknn优化教程(二)

文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK&#xff0c;开始写第二篇的内容了。这篇博客主要能写一下&#xff1a; 如何给一些三方库按照xmake方式进行封装&#xff0c;供调用如何按…...

条件运算符

C中的三目运算符&#xff08;也称条件运算符&#xff0c;英文&#xff1a;ternary operator&#xff09;是一种简洁的条件选择语句&#xff0c;语法如下&#xff1a; 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true&#xff0c;则整个表达式的结果为“表达式1”…...

【机器视觉】单目测距——运动结构恢复

ps&#xff1a;图是随便找的&#xff0c;为了凑个封面 前言 在前面对光流法进行进一步改进&#xff0c;希望将2D光流推广至3D场景流时&#xff0c;发现2D转3D过程中存在尺度歧义问题&#xff0c;需要补全摄像头拍摄图像中缺失的深度信息&#xff0c;否则解空间不收敛&#xf…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)

在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...

关于 WASM:1. WASM 基础原理

一、WASM 简介 1.1 WebAssembly 是什么&#xff1f; WebAssembly&#xff08;WASM&#xff09; 是一种能在现代浏览器中高效运行的二进制指令格式&#xff0c;它不是传统的编程语言&#xff0c;而是一种 低级字节码格式&#xff0c;可由高级语言&#xff08;如 C、C、Rust&am…...

C++八股 —— 单例模式

文章目录 1. 基本概念2. 设计要点3. 实现方式4. 详解懒汉模式 1. 基本概念 线程安全&#xff08;Thread Safety&#xff09; 线程安全是指在多线程环境下&#xff0c;某个函数、类或代码片段能够被多个线程同时调用时&#xff0c;仍能保证数据的一致性和逻辑的正确性&#xf…...

Mobile ALOHA全身模仿学习

一、题目 Mobile ALOHA&#xff1a;通过低成本全身远程操作学习双手移动操作 传统模仿学习&#xff08;Imitation Learning&#xff09;缺点&#xff1a;聚焦与桌面操作&#xff0c;缺乏通用任务所需的移动性和灵活性 本论文优点&#xff1a;&#xff08;1&#xff09;在ALOHA…...

LeetCode - 199. 二叉树的右视图

题目 199. 二叉树的右视图 - 力扣&#xff08;LeetCode&#xff09; 思路 右视图是指从树的右侧看&#xff0c;对于每一层&#xff0c;只能看到该层最右边的节点。实现思路是&#xff1a; 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...

AGain DB和倍数增益的关系

我在设置一款索尼CMOS芯片时&#xff0c;Again增益0db变化为6DB&#xff0c;画面的变化只有2倍DN的增益&#xff0c;比如10变为20。 这与dB和线性增益的关系以及传感器处理流程有关。以下是具体原因分析&#xff1a; 1. dB与线性增益的换算关系 6dB对应的理论线性增益应为&…...