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

【Python】最详细--基础语法

Python是一种强大且易于学习的编程语言,广泛用于各种应用程序的开发,如web开发、数据科学、人工智能等。以下是一些Python的基础知识:

1. Python的注释

Python的注释用于在代码中添加说明,以提高代码的可读性。注释在代码执行时会被忽略。

  • 单行注释:使用#符号标识,#后面的内容被视为注释。
# 这是一个单行注释  
print("Hello, World!")  # 这也是注释
  • 多行注释:可以使用三重引号('''""")来创建多行注释。
"""  
这是一个多行注释  
可以用来解释更多的内容  
"""  
print("Hello, World!")

2. Python的关键字

Python的关键字是语言保留的词,具有特定的功能,不能用作变量名或标识符。常见的关键字有:

表格

关键字

说明

False

布尔值假

None

空值

True

布尔值真

and

逻辑与

as

别名

assert

断言

async

异步编程

await

等待协程完成

break

退出循环

class

定义类

continue

跳过当前循环迭代

def

定义函数

del

删除对象

elif

其他条件

else

否则

except

异常捕获

finally

最终块

for

循环

from

从模块导入

global

声明全局变量

if

条件判断

import

导入模块

in

成员运算符

is

身份运算符

lambda

匿名函数

nonlocal

声明非局部变量

not

逻辑否

or

逻辑或

pass

空语句

raise

引发异常

return

返回值

try

开始异常处理

while

循环

with

上下文管理

yield

生成器

3. 数据类型

Python支持多种数据类型,主要分为以下几类:

  • 基本数据类型
    • 整数(int):表示整数值。例如,a = 10
    • 浮点数(float):表示小数值。例如,b = 3.14
    • 字符串(str):表示文本。例如,s = "Hello"
  • 集合数据类型
    • 列表(list):有序可变的集合,使用方括号[]表示。例如,fruits = ["apple", "banana", "cherry"]
    • 元组(tuple):有序不可变的集合,使用圆括号()表示。例如,dimensions = (1920, 1080)
    • 集合(set):无序不重复元素的集合,使用花括号{}表示。例如,unique_numbers = {1, 2, 3, 4}
    • 字典(dict):键值对集合,使用花括号{}表示。例如,person = {"name": "Alice", "age": 30}

  • 数字:整数和浮点数。
a = 10        # 整数  
b = 3.14     # 浮点数
  • 字符串:文本数据,使用单引号或双引号表示。
name = "Alice"
  • 布尔值TrueFalse
is_active = True

4. 类型转换

类型转换是将一种数据类型转换为另一种数据类型的过程。在Python中,可以使用内置函数进行类型转换。

  • 常用类型转换函数
    • int(): 将其他类型转换为整数。
a = "10"  
b = int(a)  # b为10(整数)
    • float(): 将其他类型转换为浮点数。
a = "3.14"  
b = float(a)  # b为3.14(浮点数)
    • str(): 将其他类型转换为字符串。
a = 10  
b = str(a)  # b为"10"(字符串)
    • list(): 将可迭代对象转换为列表。
a = (1, 2, 3)  
b = list(a)  # b为[1, 2, 3](列表)

5. 标识符

标识符是用于标识变量、函数、类等对象的名称。标识符遵循以下规则:

  • 可以包含字母、数字、下划线(_),不能以数字开头。
  • 标识符区分大小写(ageAge是两个不同的标识符)。
  • 不能使用Python的关键字作为标识符。

示例

my_variable = 10  # 合法  
MyVariable = 20   # 合法  
myVariable1 = 30  # 合法  
1st_variable = 40  # 不合法,不能以数字开头

6. 运算符

运算符是用于执行特定操作的符号。Python中的运算符按功能分类如下:

  • 算术运算符
    • +:加法
    • -:减法
    • *:乘法
    • /:除法
    • //:整数除法
    • %:模(取余)
    • **:幂(指数)

示例

a = 10  
b = 3  
print(a + b)   # 13  
print(a - b)   # 7  
print(a * b)   # 30  
print(a / b)   # 3.333...  
print(a // b)  # 3  
print(a % b)   # 1  
print(a ** b)  # 1000
  • 比较运算符
    • ==:等于
    • !=:不等于
    • >:大于
    • <:小于
    • >=:大于等于
    • <=:小于等于

示例

print(a == b)  # False  
print(a != b)  # True  
print(a > b)   # True
  • 逻辑运算符
    • and:与
    • or:或
    • not:非

示例

print(a > 5 and b < 5)  # True  
print(a > 5 or b < 2)   # True  
print(not (a > b))      # False
  • 位运算符
    • &:按位与
    • |:按位或
    • ^:按位异或
    • ~:按位取反
    • <<:左移
    • >>:右移

示例

a = 5  # 二进制:0101  
b = 3  # 二进制:0011  
print(a & b)   # 1  (0001)  
print(a | b)   # 7  (0111)
  • 赋值运算符
    • =:赋值
    • +=:加等于
    • -=:减等于
    • *=:乘等于
    • /=:除等于

示例

a = 10  
a += 5  # a = a + 5,a = 15  
a *= 2  # a = a * 2,a = 30

这些概念是Python编程的基础,掌握它们将有助于你更好地理解和使用这门语言。

7. 数据结构

  • 列表:有序的可变集合。
fruits = ["apple", "banana", "cherry"]
  • 元组:有序的不可变集合。
dimensions = (1920, 1080)
  • 字典:键值对集合。
person = {"name": "Alice", "age": 30}
  • 集合:无序的不重复元素集合。
unique_numbers = {1, 2, 3, 4}

8. 控制结构

  • 条件语句
if a > b:  print("a is greater than b")  
elif a < b:  print("a is less than b")  
else:  print("a is equal to b")
  • 循环
    • for循环:
for fruit in fruits:  print(fruit)
    • while循环:
count = 0  
while count < 5:  print(count)  count += 1

9. 函数

  • 定义函数
def greet(name):  return f"Hello, {name}!"  print(greet("Alice"))

10. 模块和库

  • 导入模块
    • Python 中有很多内置模块,也可以使用第三方库。
import math  
print(math.sqrt(16))  # 输出 4.0

11. 文件操作

  • 打开和读取文件
with open("example.txt", "r") as file:  content = file.read()  print(content)

12. 异常处理

  • 捕获异常
try:  result = 10 / 0  
except ZeroDivisionError:  print("不允许除以零!")

以上是Python的一些基础知识。通过掌握这些知识,你可以开始编写基本的Python程序。随着深入学习,你还会接触到面向对象编程、装饰器、生成器等更高级的概念和功能。

相关文章:

【Python】最详细--基础语法

Python是一种强大且易于学习的编程语言&#xff0c;广泛用于各种应用程序的开发&#xff0c;如web开发、数据科学、人工智能等。以下是一些Python的基础知识&#xff1a; 1. Python的注释 Python的注释用于在代码中添加说明&#xff0c;以提高代码的可读性。注释在代码执行时…...

二叉树基础:什么样的二叉树适合用数组来存储?

二叉树基础:什么样的二叉树适合用数组来存储? 在计算机科学中,二叉树是一种非常重要的数据结构。它具有许多应用,如搜索、排序、表达式解析等。在存储二叉树时,我们可以使用多种方法,其中一种是使用数组。但是,并不是所有的二叉树都适合用数组来存储。那么,什么样的二…...

iTOP-RK3568开发板独立NPU通过算法加特应用到以下的场景

iTOP-3568开发板采用瑞芯微RK3568处理器&#xff0c;内部集成了四核64位Cortex-A55处理器。主频高达2.0Ghz&#xff0c;RK809动态调频。集成了双核心架构GPU&#xff0c;ARM G52 2EE、支持OpenGLES1.1/2.0/3.2、OpenCL2.0、Vulkan1.1、内嵌高性能2D加速硬件。 内置独立NPU,算力…...

Java基于SpringBoot微信小程序的跳蚤市场系统设计与实现(lw+数据库+讲解等)

项目运行截图 技术框架 后端采用SpringBoot框架 Spring Boot 是一个用于快速开发基于 Spring 框架的应用程序的开源框架。它采用约定大于配置的理念&#xff0c;提供了一套默认的配置&#xff0c;让开发者可以更专注于业务逻辑而不是配置文件。Spring Boot 通过自动化配置和约…...

【分布式微服务云原生】《Redis 的高效之道:线程模型、IO 模型与 Reactor 模型全解析》

标题&#xff1a;《分布式缓存Redis 的高效之道&#xff1a;线程模型、IO 模型与 Reactor 模型全解析》 摘要&#xff1a;本文深入探讨分布式缓存 Redis 的 I线程模型、IO 模型以及 Reactor 模型。详细介绍了 Redis 在不同版本中的线程变化、IO 模型的特点和工作流程&#xff…...

科研类型PPT的制作技巧

目录 科研类型PPT的制作技巧 荣誉: 首页:ppt开头结尾 小标题 重点标记:加粗红色下划线 使用三线表 图片,文本排版 一、明确目的与受众分析 二、基础设计原则 三、内容组织与呈现 四、绘图与模型制作 五、其他注意事项 科研类型PPT的制作技巧 荣誉: 首页:ppt开…...

rom定制系列------小米6x_MIUI14_安卓13刷机包修改写入以及功能定制 界面预览

在接待一些定制化系统中。有很多工作室或者一些特殊行业的友友需要在已有固件基础上简略修改其中的功能。方便使用。例如usb调试默认开启。usb安装设置以及usb安装与内置删减一些app的定制服务。今天给友友预览其中小米6X此款机型定制相关的一些界面与功能演示。 定制机型以及…...

线性代数基础02

目录 1.向量 1.1向量的定义 1.2向量的运算 1.2.1向量加法 1.2.2向量数乘 1.2.3向量点积 1.3矩阵的特征值和特征向量 1.4向量的模 1.4.1向量的模的定义 1.4.2向量的模的几何解释 1.4.3向量的模的性质 1.5向量的内积 1.5.1向量的内积的定义 1.5.2向量的内积的几何解…...

「4.4」祖孙询问

「4.4」祖孙询问 题目描述 已知一棵 n 个节点的有根树。有 m 个询问&#xff0c;每个询问给出了一对节点的编号 x 和 y&#xff0c;询问 x 与 y 的祖孙关系。 输入格式 输入第一行包括一个整数 n 表示节点个数&#xff1b; 接下来 n 行每行一对整数对 a 和 b 表示 a 和 b 之…...

Datawhale 组队学习 文生图 Prompt攻防 task03随笔

这期我们从不同角度切入探讨赛题的进阶思路 思路1&#xff1a;对比不同大模型 首先我们可以选择尝试不同的大模型&#xff0c;使用更复杂的大模型可以提高文本改写的质量和效果。随着模型大小的增加&#xff0c;其表示能力也随之增强&#xff0c;能够捕捉更细微的语言特征和语…...

游戏投屏软件有哪些?分享这10款比较好用的!

说到投屏&#xff0c;这个事情我还是比较有发言权的&#xff01; 一般手机下载个APP&#xff0c;然后就可以通过WiFi、蓝牙或者USB进行连接投屏啦&#xff0c;下面是国内比较主流的一些游戏投屏软件&#xff0c;可以根据他们的优缺点进行选择哦&#xff01; 01.幕连 国内首款…...

[Unity Demo]从零开始制作空洞骑士Hollow Knight第十六集(下篇):制作小BOSS龙牙哥

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、制作小BOSS龙牙哥 1.导入素材制作动画2.制作两种攻击行为3.制作从惊醒到转身到走路or跑步行为总结 前言 hello大家好久没见&#xff0c;之所以隔了一天时间…...

顺序表算法题【不一样的解法!】

本章概述 算法题1算法题2算法题3彩蛋时刻&#xff01;&#xff01;&#xff01; 算法题1 力扣&#xff1a;移除元素 我们先来看这个题目的要求描述&#xff1a; 把与val相同数值的元素移除掉&#xff0c;忽略元素的相对位置变化&#xff0c;然后返回剩下与val值不同的元素个数…...

VuePress的基本常识

今天大概了解了一下Vuepress&#xff0c;感觉很棒&#xff0c;看着极其简单&#xff0c;自己也想做一个&#xff0c;后续我大概率也会做一个用Vuepress为基础做的博客网站&#xff0c;很酷~ 哈哈哈&#xff0c;下面是我今天学习Vuepress的一些内容&#xff0c;简单分享下&#…...

深入解析Vue2与Vue3的区别与Vue3的提升

Vue.js作为一款流行的前端框架&#xff0c;自发布以来&#xff0c;凭借其简洁的语法、灵活的组件化和高效的性能&#xff0c;赢得了众多开发者的喜爱。随着Vue3的发布&#xff0c;许多新特性和新功能也应运而生。那么&#xff0c;Vue2与Vue3究竟有哪些区别呢&#xff1f;Vue3又…...

认识python数据分析

Python作为一种高效、灵活且易于学习的编程语言&#xff0c;在数据分析领域展现出了强大的应用潜力。 从数据清洗、预处理到复杂的统计分析、可视化及机器学习模型的构建&#xff0c;Python提供了丰富的库和框架&#xff0c;极大地简化了数据分析的流程&#xff0c;提高了工作…...

以太网交换安全:MAC地址漂移与检测(实验:二层环路+网络攻击)

一、什么是MAC地址漂移&#xff1f; MAC地址漂移是指网络中设备的MAC地址在运行过程中发生变化的现象。 MAC地址是用于唯一标识网络中的设备。 MAC地址漂移是指交换机上一个VLAN内有两个端口学习到同一个MAC地址&#xff0c;后学习到的MAC地址表项覆盖原MAC地址表项的现象。…...

NeRF三维重建—神经辐射场Neural Radiance Field(二)体渲染相关

NeRF三维重建—神经辐射场Neural Radiance Field&#xff08;二&#xff09;体渲染相关 粒子采集部分 粒子采集的部分我们可以理解为&#xff0c;在已知粒子的情况下&#xff0c;对图片进行渲染的一个正向的过程。 空间坐标(x,y,z&#xff09;发射的光线通过相机模型成为图片上…...

软件测试工程师:如何写出好的测试用例?

软件测试用例(Test Case)是软件测试过程中的一种详细文档或描述&#xff0c;用于描述在特定条件下&#xff0c;对软件系统或组件进行测试的步骤、输入数据、预期输出和预期行为。编写高质量的测试用例是确保软件质量的关键步骤之一。以下是一些编写优秀测试用例的建议&#xff…...

「图::连通」详解并查集并实现对应的功能 / 手撕数据结构(C++)

目录 概述 成员变量 创建销毁 根节点访问 路径压缩 启发式合并 复杂度 Code 概述 并查集&#xff0c;故名思议&#xff0c;能合并、能查询的集合,在图的连通性问题和许多算法优化上着广泛的使用。 这是一个什么数据结构呢&#xff1f; 一般来讲&#xff0c;并查集是…...

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...

DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径

目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...

逻辑回归:给不确定性划界的分类大师

想象你是一名医生。面对患者的检查报告&#xff08;肿瘤大小、血液指标&#xff09;&#xff0c;你需要做出一个**决定性判断**&#xff1a;恶性还是良性&#xff1f;这种“非黑即白”的抉择&#xff0c;正是**逻辑回归&#xff08;Logistic Regression&#xff09;** 的战场&a…...

【Java学习笔记】Arrays类

Arrays 类 1. 导入包&#xff1a;import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序&#xff08;自然排序和定制排序&#xff09;Arrays.binarySearch()通过二分搜索法进行查找&#xff08;前提&#xff1a;数组是…...

oracle与MySQL数据库之间数据同步的技术要点

Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异&#xff0c;它们的数据同步要求既要保持数据的准确性和一致性&#xff0c;又要处理好性能问题。以下是一些主要的技术要点&#xff1a; 数据结构差异 数据类型差异&#xff…...

Python如何给视频添加音频和字幕

在Python中&#xff0c;给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加&#xff0c;包括必要的代码示例和详细解释。 环境准备 在开始之前&#xff0c;需要安装以下Python库&#xff1a;…...

自然语言处理——Transformer

自然语言处理——Transformer 自注意力机制多头注意力机制Transformer 虽然循环神经网络可以对具有序列特性的数据非常有效&#xff0c;它能挖掘数据中的时序信息以及语义信息&#xff0c;但是它有一个很大的缺陷——很难并行化。 我们可以考虑用CNN来替代RNN&#xff0c;但是…...

AI,如何重构理解、匹配与决策?

AI 时代&#xff0c;我们如何理解消费&#xff1f; 作者&#xff5c;王彬 封面&#xff5c;Unplash 人们通过信息理解世界。 曾几何时&#xff0c;PC 与移动互联网重塑了人们的购物路径&#xff1a;信息变得唾手可得&#xff0c;商品决策变得高度依赖内容。 但 AI 时代的来…...

重启Eureka集群中的节点,对已经注册的服务有什么影响

先看答案&#xff0c;如果正确地操作&#xff0c;重启Eureka集群中的节点&#xff0c;对已经注册的服务影响非常小&#xff0c;甚至可以做到无感知。 但如果操作不当&#xff0c;可能会引发短暂的服务发现问题。 下面我们从Eureka的核心工作原理来详细分析这个问题。 Eureka的…...

技术栈RabbitMq的介绍和使用

目录 1. 什么是消息队列&#xff1f;2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...