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

Python入门手册:Python基础语法

Python基础语法

Python是一种简洁、易读且功能强大的编程语言,非常适合初学者入门。无论你是编程新手,还是有一定编程基础但想学习Python的开发者,掌握Python的基础语法都是迈向高效编程的第一步。本文将详细介绍Python的基本语法,包括变量和数据类型、运算符和表达式、控制流语句、函数的定义和使用,以及模块和包的导入与使用。通过这些基础知识,你将能够编写简单的Python程序,并为进一步学习打下坚实的基础。

一、变量和数据类型

在Python中,变量是用来存储数据的容器。你不需要显式声明变量的类型,Python会根据赋值自动推断类型。

1. 变量的定义和赋值

# 定义变量并赋值
x = 10
y = "Hello, World!"
z = 3.14# 打印变量
print(x)  # 输出:10
print(y)  # 输出:Hello, World!
print(z)  # 输出:3.14

2. 数据类型

Python中有几种基本的数据类型,包括:

  • 整数(int):表示整数。
  • 浮点数(float):表示小数。
  • 字符串(str):表示文本。
  • 布尔值(bool):表示真(True)或假(False)。
# 整数
a = 10
print(type(a))  # 输出:<class 'int'># 浮点数
b = 3.14
print(type(b))  # 输出:<class 'float'># 字符串
c = "Hello, World!"
print(type(c))  # 输出:<class 'str'># 布尔值
d = True
print(type(d))  # 输出:<class 'bool'>

二、运算符和表达式

运算符用于执行数学运算和逻辑判断。Python支持多种运算符,包括算术运算符、比较运算符、逻辑运算符和位运算符。

1. 算术运算符

# 加法
a = 10 + 5
print(a)  # 输出:15# 减法
b = 10 - 5
print(b)  # 输出:5# 乘法
c = 10 * 5
print(c)  # 输出:50# 除法
d = 10 / 5
print(d)  # 输出:2.0# 取模
e = 10 % 3
print(e)  # 输出:1# 幂运算
f = 2 ** 3
print(f)  # 输出:8

2. 比较运算符

# 等于
a = 10 == 5
print(a)  # 输出:False# 不等于
b = 10 != 5
print(b)  # 输出:True# 大于
c = 10 > 5
print(c)  # 输出:True# 小于
d = 10 < 5
print(d)  # 输出:False# 大于等于
e = 10 >= 5
print(e)  # 输出:True# 小于等于
f = 10 <= 5
print(f)  # 输出:False

3. 逻辑运算符

# 逻辑与
a = (10 > 5) and (10 < 20)
print(a)  # 输出:True# 逻辑或
b = (10 > 5) or (10 > 20)
print(b)  # 输出:True# 逻辑非
c = not (10 > 5)
print(c)  # 输出:False

4. 位运算符

位运算符用于对整数的二进制表示进行操作。Python支持以下位运算符:

  • 按位与(&:对两个操作数的每一位进行与操作。
  • 按位或(|:对两个操作数的每一位进行或操作。
  • 按位异或(^:对两个操作数的每一位进行异或操作。
  • 按位取反(~:对操作数的每一位进行取反操作。
  • 左移(<<:将操作数的二进制表示向左移动指定的位数。
  • 右移(>>:将操作数的二进制表示向右移动指定的位数。
# 按位与
a = 12 & 5  # 12 = 1100, 5 = 0101, 1100 & 0101 = 0100 = 4
print(a)  # 输出:4# 按位或
b = 12 | 5  # 12 = 1100, 5 = 0101, 1100 | 0101 = 1101 = 13
print(b)  # 输出:13# 按位异或
c = 12 ^ 5  # 12 = 1100, 5 = 0101, 1100 ^ 0101 = 1001 = 9
print(c)  # 输出:9# 按位取反
d = ~12  # 12 = 1100, ~1100 = 0011 (注意:实际结果会根据整数的位数有所不同)
print(d)  # 输出:-13 (在32位系统中,~12 = -13)# 左移
e = 12 << 2  # 12 = 1100, 1100 << 2 = 110000 = 48
print(e)  # 输出:48# 右移
f = 12 >> 2  # 12 = 1100, 1100 >> 2 = 0011 = 3
print(f)  # 输出:3

三、控制流语句

控制流语句用于控制程序的执行流程。Python中常用的控制流语句包括ifforwhile

1. if语句

# if语句
x = 10
if x > 5:print("x大于5")
elif x == 5:print("x等于5")
else:print("x小于5")

2. for循环

# for循环
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:print(fruit)

3. while循环

# while循环
i = 1
while i <= 5:print(i)i += 1

四、函数的定义和使用

函数是组织好的、可重复使用的代码块,用于实现单一或相关联的功能。在Python中,使用def关键字定义函数。

1. 定义函数

# 定义函数
def greet(name):print("Hello, " + name + "!")# 调用函数
greet("Alice")  # 输出:Hello, Alice!

2. 带返回值的函数

# 定义带返回值的函数
def add(a, b):return a + b# 调用函数
result = add(5, 3)
print(result)  # 输出:8

五、模块和包的导入与使用

模块是一个包含Python代码的文件,用于组织相关的函数、类和变量。包是一种更高级的组织方式,可以包含多个模块。

1. 导入模块

# 导入模块
import math# 使用模块中的函数
print(math.sqrt(16))  # 输出:4.0

2. 导入模块中的特定函数

# 导入模块中的特定函数
from math import sqrt# 使用函数
print(sqrt(16))  # 输出:4.0

3. 导入包

# 导入包
import datetime# 使用包中的模块
now = datetime.datetime.now()
print(now)  # 输出当前时间

六、总结

通过以上内容,我们详细介绍了Python的基本语法,包括变量和数据类型、运算符和表达式(包括位运算符)、控制流语句、函数的定义和使用,以及模块和包的

相关文章:

Python入门手册:Python基础语法

Python是一种简洁、易读且功能强大的编程语言&#xff0c;非常适合初学者入门。无论你是编程新手&#xff0c;还是有一定编程基础但想学习Python的开发者&#xff0c;掌握Python的基础语法都是迈向高效编程的第一步。本文将详细介绍Python的基本语法&#xff0c;包括变量和数据…...

SpringBoot-SpringBoot源码解读

SpringBoot-SpringBoot源码解读 一、Spring Boot启动过程概述 Spring Boot通过一系列的类和机制&#xff0c;简化了Spring应用的启动流程。当你执行SpringApplication.run()时&#xff0c;Spring Boot会自动完成应用的初始化、环境配置、组件加载、自动配置等任务&#xff0c…...

CAD如何导出PDF?PDF如何转CAD?详细教程来了

浩辰CAD看图王是一款功能强大的CAD图纸查看与编辑工具&#xff0c;其核心功能之一便是支持CAD与PDF格式的互转。下面是CAD看图王输出PDF和PDF转CAD功能的详细介绍及操作步骤&#xff1a; 一、输出PDF功能 看图王可以将CAD图纸转换为PDF格式&#xff0c;是文件在不同的设备上显…...

python-数据可视化(大数据、数据分析、可视化图像、HTML页面)

通过 Python 读取 XLS 、CSV文件中的数据&#xff0c;对数据进行处理&#xff0c;然后生成包含柱状图、扇形图和折线图的 HTML 报告。这个方案使用了 pandas 处理数据&#xff0c;matplotlib 生成图表&#xff0c;并将图表嵌入到 HTML 页面中。 1.XSL文件生成可视化图像、生成h…...

el-select中自定义 两组el-option,但是key不一样,并且点击需获取当前整个项的所有属性

当el-select中只有一组el-option &#xff0c; 获取点击的当前项的属性 &#xff0c; el-select 绑定:value-keyid 但是 当el-select中有两组el-option ,每组option的key不一致,如下代码所示 <el-selectv-model"sth" change"choosee":value-key"…...

【笔记】OpenCV的学习(未完)

由于只记关键和不懂的部分 希望做到下次再看这部分笔记就记得 所以用词会非常简练 前向传播 输入数据依次经过模型的各层&#xff0c;按照各层定义的运算规则进行计算&#xff0c;最终得到模型预测输出的过程。 单向的信息流动&#xff0c;不涉及模型参数的更新。 助于思考的…...

多模态大语言模型arxiv论文略读(八十七)

MG-LLaVA: Towards Multi-Granularity Visual Instruction Tuning ➡️ 论文标题&#xff1a;MG-LLaVA: Towards Multi-Granularity Visual Instruction Tuning ➡️ 论文作者&#xff1a;Xiangyu Zhao, Xiangtai Li, Haodong Duan, Haian Huang, Yining Li, Kai Chen, Hua Ya…...

《棒球百科》长寿运动排名·棒球1号位

关于长寿运动的排名&#xff0c;运动长寿秘诀&#xff1a; 一、全球公认的「长寿运动」排名 游泳&#xff08;低冲击、强化心肺&#xff09; 快走/健走&#xff08;每日30分钟降低15%早逝风险&#xff09; 太极拳&#xff08;平衡力减压&#xff0c;哈佛研究称可延缓衰老&am…...

Maven 项目打包时添加本地 Jar 包

在 Maven 项目开发中&#xff0c;我们经常会遇到需要引入本地 Jar 包的场景&#xff0c;比如使用未发布到中央仓库的第三方库、公司内部自定义工具包&#xff0c;或者处理版本冲突的依赖项。本文将详细介绍如何通过 Maven 命令将本地 Jar 包安装到本地仓库&#xff0c;并在项目…...

记录将网站从http升级https

http与https 你知道http是什么吗&#xff0c;那你知道https吗&#xff1f;在进行升级之前我们应该都听说http不安全&#xff0c;要用https&#xff0c;那你知道这是为什么吗&#xff1f; 什么是http&#xff1f; HTTP 是超文本传输协议&#xff0c;也就是HyperText Transfer…...

如何利用 ORM 框架有效防范 SQL 注入攻击

如何利用 ORM 框架有效防范 SQL 注入攻击 1. 引言 在现代 Web 开发中,SQL 注入攻击始终是数据库安全的一大隐患。攻击者利用不安全的 SQL 语句执行恶意操作,可能导致数据库泄露、篡改甚至被完全控制。幸运的是,ORM(对象关系映射)框架为开发者提供了一种更安全、更高效的…...

spark-shuffle 类型及其对比

1. Hash Shuffle 原理&#xff1a;将数据按照分区键进行哈希计算&#xff0c;将相同哈希值的数据发送到同一个Reducer中。特点&#xff1a;实现简单&#xff0c;适用于数据分布均匀的场景。但在数据分布不均匀时&#xff0c;容易导致某些Reducer处理的数据量过大&#xff0c;产…...

免费PDF工具-PDF24V9.16.0【win7专用版】

【百度】https://pan.baidu.com/s/1H7kvHudG5JTfxHg-eu2grA?pwd8euh 提取码: 8euh 【夸克】https://pan.quark.cn/s/92080b2e1f4c 【123】https://www.123912.com/s/0yvtTd-XAHjv https://creator.pdf24.org/listVersions.php...

游戏开发实战(二):Python复刻「崩坏星穹铁道」嗷呜嗷呜事务所---源码级解析该小游戏背后的算法与设计模式【纯原创】

文章目录 奇美拉和队列奇美拉被动技能多对多观察者关系实现自定义元类奇美拉基类 管理奇美拉的队列奇美拉队列类心得体会扩展 规则定义工作相关奇美拉相关 奇美拉属性 在本篇博文&#xff0c;我将介绍本项目的整体框架&#xff0c;以及“编码规则”&#xff0c;这些规则保证了本…...

人工智能发展

探秘人工智能领域的热门编程语言与关键知识 在当今科技飞速发展的时代&#xff0c;人工智能已渗透到生活的各个角落&#xff0c;从智能语音助手到精准的推荐系统&#xff0c;从自动驾驶汽车到医疗影像诊断&#xff0c;人工智能正以前所未有的速度改变着世界。而在这背后&#x…...

在Rockchip平台上利用FFmpeg实现硬件解码与缩放并导出Python接口

在Rockchip平台上利用FFmpeg实现硬件解码与缩放并导出Python接口 一、为什么需要硬件加速?二、[RK3588 Opencv-ffmpeg-rkmpp-rkrga编译与测试](https://hi20240217.blog.csdn.net/article/details/148177158)三、核心代码解释3.1 初始化硬件上下文3.2 配置解码器3.3 构建滤镜链…...

Flink集成资源管理器

Flink集成资源管理器 Apache Flink 支持多种资源管理器&#xff0c;主要包括以下几种‌&#xff1a; YARN ResourceManager ‌&#xff1a;适用于使用 Hadoop YARN 作为资源管理器的环境。YARN ResourceManager 负责管理集群中的资源&#xff0c;包括 CPU、内存等&#xff0c;并…...

一周学会Pandas2 Python数据处理与分析-Pandas2数据合并与对比-pd.concat():轴向拼接

锋哥原创的Pandas2 Python数据处理与分析 视频教程&#xff1a; 2025版 Pandas2 Python数据处理与分析 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili 在数据分析中&#xff0c;数据往往分散在多个来源&#xff08;如不同文件、数据库表或API&#xff09;&#xff0c;需…...

安卓原生兼容服务器

安卓原生兼容服务器的定义 安卓原生兼容服务器‌指基于Android系统内核和服务框架构建的服务器环境&#xff0c;能够在不依赖第三方适配层的情况下&#xff0c;直接运行符合Android API规范的服务程序&#xff0c;并满足与其他软硬件组件的协同工作需求。其核心特征体现在以下…...

优化用户体验:拦截浏览器前进后退、刷新、关闭、路由跳转等用户行为并弹窗提示

&#x1f9d1;‍&#x1f4bb; 写在开头 点赞 收藏 学会&#x1f923;&#x1f923;&#x1f923; 需求 首先列举一下需要拦截的行为&#xff0c;接下来我们逐个实现。 浏览器前进后退标签页刷新和关闭路由跳转 1、拦截浏览器前进后退 这里的实现是核心&#xff0c;涉及到大…...

横川机器人驱动器导入参数教程

连接端口&#xff1a;有分220v和380v&#xff08;刷新多次无效果就重新打开软件&#xff09;升级固件&#xff1a;区分低压版和高压版导入参数&#xff1a;下载参数&#xff0c;下载成功后必须软重启&#xff0c;重新连接确认电机无干涉后相序测试 &#xff08;等待10s&#x…...

大学生创新创业项目管理系统设计——数据库实验九

本实验为自己设计完成&#xff0c;我当年数据库实验得了94分 目录 1.实验目的 2.实验内容和要求 3.实验步骤 4.实验心得 实验九 数据库设计 1.实验目的 掌握数据库设计的过程和方法。 2.实验内容和要求 &#xff08;35&#xff09;大学生创新创业项目管理系统设计 一…...

电磁场与电场、磁场的关系

电磁场与电场、磁场之间存在着深刻的内在联系和统一性关系。这三者共同构成了电磁相互作用的基本框架&#xff0c;是理解电磁现象的关键所在。 电场和磁场实际上是电磁场的两个不同表现形式&#xff0c;它们既相互区别又密切联系。电场主要由静止电荷产生&#xff0c;表现为对…...

Python爬虫实战:研究Newspaper框架相关技术

1. 引言 1.1 研究背景与意义 互联网的快速发展使得新闻信息呈现爆炸式增长&#xff0c;如何高效地获取和分析这些新闻数据成为研究热点。新闻爬虫作为一种自动获取网页内容的技术工具&#xff0c;能够帮助用户从海量的互联网信息中提取有价值的新闻内容。本文基于 Python 的 …...

Kotlin MultiPlatform 跨平台版本的记账 App

前言 一刻记账 KMP (Kotlin MultiPlatform) 跨平台版本今天终于把 Android 和 iOS 进度拉齐了. 之前只有纯 Android 的版本. 最近大半年有空就在迁移代码到 KMP 上 中间学了 iOS 基础知识. xcode 的使用. 跨平台的架构的搭建… 感觉经历了很多很多. 一把辛酸泪 迁移的心路历…...

PIO 中的赋值魔术,MOV 指令

前言 在普通编程语言中&#xff0c;mov 可以理解为“赋值指令”&#xff0c;将一个值从一个地方拷贝到另一个地方。在 RP2040 的 PIO 汇编语言中&#xff0c;mov 同样是数据传递的关键指令&#xff0c;但它操作的是 PIO 独有的几个寄存器。 在 PIO 中&#xff0c;你可以用 mov …...

[docker]更新容器中镜像版本

从peccore-dev仓库拉取镜像 docker pull 10.12.135.238:8060/peccore-dev/configserver:v1.13.45如果报错&#xff0c;请参考docker拉取镜像失败&#xff0c;添加仓库地址 修改/etc/CET/Common/peccore-docker-compose.yml文件中容器的版本,为刚刚拉取的版本 # 配置中心confi…...

第十七次CCF-CSP算法(含C++源码)

第十七次CCF-CSP认证 小明种苹果AC代码 小明种苹果&#xff08;续&#xff09;AC代码 后面好难哈哈 小手冰凉 小明种苹果 输入输出&#xff1a; 题目链接 AC代码 #include<iostream> using namespace std; int n,m; int res,res3; int sum; int res21; int main(){cin …...

打造一个支持MySQL查询的MCP同步插件:Java实现

打造一个支持MySQL查询的MCP同步插件&#xff1a;Java实现 用Java实现一个MCP本地插件&#xff0c;直接通过JDBC操作本地MySQL&#xff0c;并通过STDIO与上层MCP客户端&#xff08;例如Cursor&#xff09;通信。插件注册一个名为mysql 的同步工具&#xff0c;接收连接参数及SQL…...

黑马k8s(十五)

1.Ingress介绍 2.Ingress使用 环境准备 Http代理 Https代理...