Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Python入门:2.注释与变量的全面解析

Python入门:2.注释与变量的全面解析

作者头像
平凡之路.
发布于 2025-01-13 00:28:39
发布于 2025-01-13 00:28:39
23000
代码可运行
举报
文章被收录于专栏:学习学习
运行总次数:0
代码可运行

在学习Python编程的过程中,注释和变量是必须掌握的两个基础概念。注释帮助我们理解代码的意图,而变量则是用于存储和操作数据的核心工具。熟练掌握这两者,不仅能提高代码的可读性和维护性,还能为后续学习复杂编程概念打下坚实的基础。

一、什么是注释?

注释是程序员在代码中写下的解释性文本,用于描述代码的功能、用途或逻辑。这些文字不会被Python解释器执行,因此不会对程序的运行产生任何影响。优秀的注释能够让代码更易读,尤其在多人协作的场景下显得尤为重要。

1. 单行注释

单行注释是最简单的注释形式,以 # 开头,后跟注释内容。适用于对某段代码或逻辑进行简短说明。

示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 这是一个单行注释
print("Hello, World!")  # 输出“Hello, World!

用法:

  • 为某段代码提供简单说明。
  • 添加代码上下文信息,便于理解。

建议:

  • 注释内容应简洁明了。
  • 修改代码时同步更新相关注释,确保注释准确反映代码逻辑。
2. 多行注释

多行注释通常用三引号('''""")括起来,可以用于解释复杂的逻辑或添加详细背景信息。

示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
'''
以下代码用于计算两个数的和,
并输出结果。
'''
a = 5
b = 10
print(a + b)

注意事项:

  • 多行注释会占用较多空间,不适合简单说明。
  • 如果多行字符串没有赋值给变量,它的作用类似注释,不会被解释器处理。
3. 注释的最佳实践

避免明显的注释:

如下示例不推荐:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 将x赋值为10
x = 10

解释代码逻辑或特殊情况:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 如果用户未提供年龄,则默认值为18
age = user_input or 18

确保注释准确且清晰: 注释应能帮助阅读代码的人快速理解其逻辑和背景。

4. 注释快捷键及常用快捷键

在使用代码编辑器(如PyCharm、VSCode)时,可以通过快捷键快速添加或删除注释。此外,了解其他常用快捷键也能显著提升开发效率。

注释快捷键:

操作

Windows/Linux

macOS

单行注释

Ctrl + /

Command + /

多行注释

选中后按Ctrl + /

选中后按Command + /

示例: 原代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
x = 10
y = 20
print(x + y)

使用快捷键后:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# x = 10
# y = 20
# print(x + y)
常用快捷键:

操作

Windows/Linux

macOS

运行代码

Shift + Enter

Command + Shift + R

格式化代码

Ctrl + Alt + L

Command + Option + L

自动补全代码

Ctrl + Space

Control + Space

查找

Ctrl + F

Command + F

替换

Ctrl + R

Command + Option + F

跳转到定义

Ctrl + B

Command + B

了解和熟练使用这些快捷键,将显著提高你的开发效率。

二、变量的定义与使用

变量是编程中用于存储数据的容器。在Python中,变量具有动态类型特性,赋值时无需声明类型。

1. 定义变量

定义变量时,直接赋值即可。变量名需遵循以下规则:

  • 变量名只能由字母、数字和下划线组成。
  • 变量名不能以数字开头。
  • 变量名不能与Python的关键字(如iffor等)冲突。

示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 定义不同类型的变量
name = "Alice"   # 字符串
age = 25         # 整数
height = 5.7     # 浮点数
2. 使用变量

定义变量后,可以通过变量名访问其值。

示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
name = "Alice"
age = 25
print(f"My name is {name}, and I am {age} years old.")

输出:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
My name is Alice, and I am 25 years old.
3. 动态类型特性

Python中的变量可以随时更改其值和类型。

示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
x = 10       # 整数
x = "Hello"  # 字符串
print(x)

输出:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Hello
4. 变量命名规范

良好的命名规范有助于提升代码的可读性和可维护性。

  • 具有描述性: 变量名应清晰描述变量的用途,例如,使用total_score而非s
  • 使用下划线分隔单词: 例如,student_name
  • 避免关键字冲突: 不要使用classfor等关键字作为变量名。
  • 区分大小写: Namename是两个不同的变量。

示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 推荐命名
student_name = "Alice"
exam_score = 95
5. 数据类型与 type 函数

以下是Python常用数据类型的介绍,以表格形式展示:

数据类型

描述

示例

int

整数类型,可以是正数、负数或零。

x = 42

float

浮点数类型,用于表示小数或带小数点的数字。

x = 3.14

complex

复数类型,用于表示复数,形式为a + bj,其中a是实部,b是虚部,j是虚数单位。

x = 2 + 3j

bool

布尔类型,用于表示逻辑值,只有True和False两种取值。

x = True

str

字符串类型,用于表示文本数据,用单引号或双引号括起来。

x = "Hello"

list

列表类型,用于存储多个有序的、可变的元素。可以包含不同类型的数据。

x = [1, 2, 3]

tuple

元组类型,与列表类似,但元素不可变。

x = (1, 2, 3)

dict

字典类型,用于存储键值对的无序集合。

x = {"a": 1, "b": 2}

set

集合类型,用于存储无序、唯一的元素集合。

x = {1, 2, 3}

frozenset

冻结集合,与set类似,但元素不可变。

x = frozenset([1, 2, 3])

bytes

字节类型,用于存储二进制数据的不可变序列。

x = b"Hello"

bytearray

字节数组类型,与bytes类似,但可变。

x = bytearray(b"Hello")

NoneType

表示空值或未定义值,只有一个值None。

x = None

Python支持多种数据类型,可以使用type函数检查变量的类型。

示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
x = 10
y = 3.14
z = "Python"

print(type(x))  # 输出:<class 'int'>
print(type(y))  # 输出:<class 'float'>
print(type(z))  # 输出:<class 'str'>
6. 删除变量

可以使用del关键字删除变量。

示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
x = 10
print(x)  # 输出 10

del x
print(x)  # 抛出错误:NameError: name 'x' is not defined
7. 变量的作用域
  • 局部变量: 在函数内部定义,仅在函数内可访问。
  • 全局变量: 在函数外部定义,可以在整个脚本中使用。

示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
x = 10  # 全局变量

def my_function():
    x = 5  # 局部变量
    print(f"局部变量:{x}")

my_function()
print(f"全局变量:{x}")

输出:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
局部变量:5
全局变量:10

三、总结

在学习Python时,注释和变量是最基础也是最重要的部分之一:

  • 注释:
    • 单行注释用于简短说明,多行注释适合复杂逻辑。
    • 注释内容应清晰准确,能帮助他人快速理解代码。
    • 使用快捷键提高编写效率。
  • 变量:
    • Python的变量具有动态类型特性,使用灵活。
    • 遵循命名规范可以提升代码的可读性。
    • 使用type函数检查变量的类型,快速确认数据类型。
    • 了解变量的作用域(局部变量与全局变量)。

通过对注释和变量的熟练掌握,你将能够编写更优雅、更高效的Python代码,为后续学习复杂编程概念打下坚实的基础!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-12-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
EIP-1559 对 gas 费计算的影响
今天有同学问我 etherscan 里先生的 "Txn Savings Fees" 是啥,我就顺便把以太坊新的 gas 费计算方式讲一下吧。
Tiny熊
2022/11/07
1.2K0
EIP-1559 对 gas 费计算的影响
【解读】以太坊上海升级即将激活的四个EIP
以太坊巴黎升级(合并,共识转POS)之后又一重大更新即将到来——上海升级!目前有着上千专业开发者的以太坊核心社区,从15年走来已经历经15次主网升级,而这一次上海升级将为链上锁定着的230亿美金的POS质押ETH提供解锁能力,还伴随有对GAS优化的诸多EIP融入。
十四君
2023/02/20
1.1K0
【解读】以太坊上海升级即将激活的四个EIP
web3.js:使用eth包
web3-eth包提供了一套强大的功能,可以与以太坊区块链和智能合约进行交互。在本教程中,我们将指导您如何使用web3.js版本4的web3-eth包的基础知识。我们将在整个示例中使用TypeScript。
孟斯特
2024/05/13
3360
web3.js:使用eth包
【易错概念】以太坊的账户、交易、Gas和Gas Limit的概念
所有以太坊区块链上的行动都是由各账户发送的交易激活。每次一个合约账户收到一个交易,交易自带的参数都会成为代码的输入值运行。合约代码会被以太坊虚拟机(EVM)在每一个参与网络的节点上运行,以作为它们新区块的验证。
辉哥
2018/08/10
1.2K0
使用Web3.py模式:解析签名交易
在一小部分用例中,你可能需要对尚未包含在区块中的签名交易进行解码。例如,MEV 协议与独立于主交易池的签名交易集一起工作时。如果你不明白这句话的意思,那么你很有可能不需要这篇博文的内容,你可能仅仅对获取以及出块的交易数据感兴趣。那么,我们就从这里开始吧。
Tiny熊
2022/11/07
1.1K0
replacement transaction underpriced
在与以太坊区块链进行交互时,特别是在发送交易时,你可能会遇到一个错误信息:replacement transaction underpriced。这个错误通常出现在试图替换已经在交易池中的交易时,新的交易的 gasPrice 太低。下面将解释为什么会出现这个错误,介绍它的背景,以及如何避免这个问题。
孟斯特
2024/11/14
2210
replacement transaction underpriced
介绍以太坊 gas 限制项目(EGL)
Ethereum Eagle 项目 (EGL) 是一项社区主导的工作,专注于以一种为所有以太坊利益相关者最大化价值的方式解决社区与矿工之间的激励不一致和缺乏透明度的问题。EGL 紧跟 Flashbots 的脚步,无需硬分叉即可处理协议级别的属性。
公众号---人生代码
2021/09/18
1.4K0
介绍以太坊 gas 限制项目(EGL)
Solidity、Geth、EVM 三者之间的关系
在以太坊开发生态系统中,Solidity 版本、Geth 版本 和 EVM(Ethereum Virtual Machine)版本 之间有密切的关系。理解它们的关系对于智能合约开发、部署和执行至关重要。以下是对这些版本关系的详细介绍:
孟斯特
2024/10/12
3570
Solidity、Geth、EVM 三者之间的关系
带你了解下关于gas一些基本常识
在以太坊出现的很多地方我们都能看到gas这个东西,比如购买NFT需要花费ETH,同时也需要支付gas费用,铸造NFT也是同样。那么究竟什么是gas费,为啥要支付gas费呢?
用户7634691
2023/02/24
6270
带你了解下关于gas一些基本常识
关于eth gas的思考
理解Gas需要的几个概念: 旷工费:除了转账金额需要额外支付给以太坊网络旷工的费用 gas cost交易旷工费用 ( 也是也是以太坊的交易费用 ) =gas used数量 * gas price ( gas 单价,以太币计价) Gas:以太坊每一步操作都需要消耗Gas,执行总量就是Gas Gas Price:每一步操作的单价,一般用GWei作为单位,乘以Gas就是需要支付的矿工费。Gas Price是运行一个特别的交易或程序(被称作合约)所需的gas。 一个区块的gas费用可以用来暗示计算工作量,交易量和
rectinajh
2018/05/17
2K0
ethereum原理-gas说明
简单的说就是手续费的一种变体,本质还是转账费用,只能在设计上,功能更复杂,用处更多。 即然是手续费,为什么不干脆一次性收取或者设定一个转账比例,不是更简单? 这个后面说。
潇洒
2023/10/23
3730
参投ICO失败的原因竟然是Gas Limit=25200
最近币圈的ICO太火,有些项目在ico.info平台上几分钟就完成众筹,一些朋友纵然使出各种解数,还是抢不到。然后他们就开始使用以太坊钱包参投项目,安装钱包和参投的过程本来并不麻烦,比如之前写过的《图
申龙斌
2018/03/06
1.9K0
参投ICO失败的原因竟然是Gas Limit=25200
ETH 2.0改头换面,六月份升级会有何影响?
2022年之后,以太坊社区将停止使用“Eth1”与“Eth2”,转而使用“执行层”与“共识层”描述即将到来的以太坊升级。这一称呼上的变化虽未在国内加密圈引起重大探讨,但该变化预示着以太坊核心团队正在为以太坊升级做最后的准备。
小将
2022/02/11
1.1K0
ETH 2.0改头换面,六月份升级会有何影响?
Solidity:Gas
在 Solidity 和以太坊中,gas 是一个非常重要的概念。它是衡量在以太坊区块链上执行交易或运行智能合约所需的计算工作量的单位。基本上,每一次在以太坊网络中执行某种操作,如交易或合约调用,都需要消耗一定数量的 gas。
孟斯特
2024/05/28
1980
Solidity:Gas
EVM 设计原理
在阅读这篇文章之前,请您先阅读初步理解以太坊虚拟机[2]和以太坊的数据组织[3],它将会介绍 EVM 的基本知识,帮助您形成基本的认识。在开始之前,假设您已经掌握了上文中的基础,我们根据黄皮书进一步地补充理论基础。由于原始的黄皮书公式过多,不易阅读,可以参考按照论文重写后的版本[4]。其次,本文使用的图片来自其他资料,会在参考资料部分注明。
Tiny熊
2023/01/09
5700
EVM 设计原理
以太坊介绍和使用
以太坊是一个能够在区块链上实现智能合约、开源的底层系统。换言之,以太坊是可编程的区块链,它并不是给用户一系列预先设定好的操作(例如比特币交易),而是允许用户按照自己的意愿创建复杂的操作。这样一来,以太坊是就可以作为多种类型去中心化区块链应用的平台,这些应用比如包括之前很火的各种代币但并不仅限于此,我们可以做很多除了代币之外的东西,比如你可以输出一行代表自己不是外行身份的hello world,或者在上面做一个简单的计算器,总之你可以在上面实现你想要的任何功能。
fnatic
2022/07/15
37.5K0
基于Ordinals在比特币L1网络实现EVM图灵完备智能合约支持——BxE协议
区块链技术自诞生以来,为金融、供应链、数字身份等领域带来了变革性的创新。然而,作为第一个成功应用区块链技术的比特币,存在着一些局限性,如较低的交易吞吐量、较高的能源消耗以及有限的脚本功能。这使得比特币在支持复杂应用和智能合约方面显得力不从心。
深蓝studyzy
2024/04/17
3140
基于Ordinals在比特币L1网络实现EVM图灵完备智能合约支持——BxE协议
以太坊发展简史
一起来看看以太坊都经历了哪些升级或分叉, 他们都发生的时间在什么时间,加入了哪些特性。
Tiny熊
2019/06/24
2.3K0
以太坊账号抽象ERC4337的过审方案解读(上)
在2023.3.1号丹佛的 WalletCon 上,官宣由以太坊基金会开发人员设计实现的ERC-4337 的核心合约已经通过了 OpenZeppelin 的审计,通过各项测试,目前审计后的合约已经顺利部署在以太坊主网以及若干测试网,后续可在各EVM兼容链上运作包括 Polygon、Optimism、Arbitrum、BNB Smart Chain、Avalanche 和 Gnosis Chain等。
十四君
2023/09/01
6790
以太坊账号抽象ERC4337的过审方案解读(上)
EVM 源码解析
以太坊虚拟机 (Ethereum Virtual Machine, EVM) 负责执行交易和更新区块链状态。
谛听
2023/02/05
1.3K0
相关推荐
EIP-1559 对 gas 费计算的影响
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验