python代码注释方式
在 Python 中,注释是用于解释代码、提高代码可读性和可维护性的重要工具。Python 支持两种主要的注释方式:单行注释和多行注释。此外,Python 还支持文档字符串(docstrings),用于为模块、函数、类和方法提供详细的文档。
1. 单行注释
单行注释使用 #
符号。#
后面的所有内容都会被解释器忽略。
# 这是一个单行注释
print("Hello, World!") # 这是一个注释
2. 多行注释
多行注释可以使用多个 #
符号,或者使用三引号('''
或 """
)。
使用多个 #
符号
# 这是一个多行注释
# 它可以跨越多行
# 用于解释复杂的代码逻辑
print("Hello, World!")
使用三引号
"""
这是一个多行注释
它也可以跨越多行
并且可以用于文档字符串
"""
print("Hello, World!")
3. 文档字符串
文档字符串是 Python 中的一种特殊注释,用于为模块、函数、类和方法提供详细的文档。文档字符串通常使用三引号('''
或 """
)。
模块文档字符串
"""
这是一个模块文档字符串
它描述了模块的功能和用途
"""
print("Hello, World!")
函数文档字符串
def greet(name):"""这是一个函数文档字符串它描述了函数的功能、参数和返回值:param name: 传入的名称:return: 返回一个问候字符串"""return f"Hello, {name}!"print(greet("Alice"))
类文档字符串
class Person:"""这是一个类文档字符串它描述了类的功能和用途"""def __init__(self, name, age):self.name = nameself.age = agedef greet(self):return f"Hello, my name is {self.name} and I am {self.age} years old."person1 = Person("Alice", 30)
print(person1.greet())
4. 注释的最佳实践
-
简洁明了:注释应简洁明了,避免冗长。
-
解释复杂逻辑:注释应解释复杂的逻辑和算法,而不是显而易见的代码。
-
更新注释:注释应与代码同步更新,避免过时的注释误导开发者。
-
使用文档字符串:为模块、函数、类和方法提供详细的文档字符串,便于其他开发者理解和使用。
5. 示例代码
以下是一个包含各种注释的示例代码:
"""
这是一个模块文档字符串
它描述了模块的功能和用途
"""# 导入必要的库
import mathdef calculate_area(radius):"""这是一个函数文档字符串它描述了函数的功能、参数和返回值:param radius: 圆的半径:return: 圆的面积"""# 计算圆的面积area = math.pi * radius ** 2return area# 主函数
def main():# 获取用户输入radius = float(input("请输入圆的半径: "))# 调用函数area = calculate_area(radius)# 打印结果print(f"圆的面积是: {area:.2f}")if __name__ == "__main__":main()
通过这些注释方式,开发者可以有效地提高代码的可读性和可维护性。
相关文章:
python代码注释方式
在 Python 中,注释是用于解释代码、提高代码可读性和可维护性的重要工具。Python 支持两种主要的注释方式:单行注释和多行注释。此外,Python 还支持文档字符串(docstrings),用于为模块、函数、类和方法提供…...
小哆啦解题记:螺旋矩阵
小哆啦开始刷力扣的第二十八天 54. 螺旋矩阵 - 力扣(LeetCode) 🌪️ 一场螺旋风暴的较量 在一个阳光明媚的午后,小哆啦悠闲地坐在窗边啃着曲奇,突然,一道神秘的光芒闪过,小智从代码的虚空中出现…...
【C#】委托是什么
在 C# 中,委托(Delegate) 是一种类型安全的函数指针,可以将方法作为参数传递或者保存方法的引用。下面详细介绍一下委托的相关概念和用法: 1. 基本概念 类型安全:委托在声明时会指定方法的返回类型和参数…...

[Lc(2)滑动窗口_1] 长度最小的数组 | 无重复字符的最长子串 | 最大连续1的个数 III | 将 x 减到 0 的最小操作数
目录 1. 长度最小的字数组 题解 代码 ⭕2.无重复字符的最长子串 题解 代码 3.最大连续1的个数 III 题解 代码 4.将 x 减到 0 的最小操作数 题解 代码 1. 长度最小的字数组 题目链接:209.长度最小的字数组 题目分析: 给定一个含有 n 个 正整数 的数组…...
迷你世界脚本玩家接口:Player
玩家接口:Player 彼得兔 更新时间: 2024-07-28 17:49:05 继承自 Actor 具体函数名及描述如下: 序号 函数名 函数描述 1 getAttr(...) 玩家属性获取 2 setAttr(...) 玩家属性设置 3 getHostUin(...) 获取房主uin 4 isMainPlayer(...) …...

三、0-1搭建springboot+vue3前后端分离-springboot整合mybatis plus 之本地安装mysql
一、安装mysql: 官网下载:https://dev.mysql.com/downloads/mysql/?spm5176.28103460.0.0.40f75d27Stx4Xj 网盘分享:http://链接: https://pan.baidu.com/s/1mS_-VxrKAeRL3utBvD64gg?pwd6666 提取码: 6666 复制这段内容后打开百度网盘手机…...
市场趋势解析与交易策略优化
市场趋势解析与交易策略优化 在市场环境不断变化的情况下,理解市场趋势并优化交易策略是交易者稳健发展的关键。通过科学的方法识别市场动向,结合数据分析优化交易方案,可以提高交易效率并降低风险。本文将探讨趋势分析的要点,并介…...
Spring Boot 常用注解全解析:从核心到进阶的实践指南
目录 引言:为什么注解是Spring Boot开发者的“战略武器”? 一、核心启动注解 1.1 应用启动三剑客 二、Web开发注解 2.1 控制器层注解 三、依赖注入注解 3.1 依赖管理矩阵 四、数据访问注解 4.1 JPA核心注解 五、配置管理注解 5.1 配置绑定注解…...
如何优化FFmpeg拉流性能及避坑指南
FFmpeg作为流媒体处理的核心工具,其拉流性能直接影响直播/点播体验。本文从协议优化、硬件加速、网络策略三大维度切入,结合实战案例与高频踩坑点,助你突破性能瓶颈! 一、性能优化进阶:从协议到硬件的全链路调优 协议选…...

基础dp——动态规划
目录 一、什么是动态规划? 二、动态规划的使用步骤 1.状态表示 2.状态转移方程 3.初始化 4.填表顺序 5.返回值 三、试题讲解 1.最小花费爬楼梯 2.下降路径最小和 3.解码方法 一、什么是动态规划? 动态规划(Dynamic Programming&…...

通过微步API接口对单个IP进行查询
import requests import json# 微步API的URL和你的API密钥 API_URL "https://api.threatbook.cn/v3/ip/query" API_KEY "***" # 替换为你的微步API密钥 def query_threatbook(ip):"""查询微步API接口,判断IP是否为可疑"…...

LLM实践——DeepSeek技术报告学习(含实现逻辑梳理)
目录 一些基本概念:deepseek-r1-zerodeepseek-R1deepseek-R1 distill model: DeepSeek官网:https://www.deepseek.com/ 一些基本概念: post-training:旨在优化预训练模型的特定能力,包括任务适配性、安…...

Autojs无线连接vscode方法
1.获得电脑的IP 在电脑的CMD界面输入 ipconfig 然后找到ipv4的那一行,后面的即是你的电脑IP地址 2.打开vscode的autojs服务 安装autojs插件 在vscode界面按下ctrlshiftp 输入autojs 找到 点击 之后打开手机上的autojs 之后输入刚刚电脑上的地址 可以看到vsc…...

第一节:基于Winform框架的串口助手小项目---基础控件使用《C#编程》
本人于2025年3月2号学习C#编程,要学会一门编程语言,一定要有一个或多个项目的经验才能对着这门语言有深入的了解,为了深入了解和记录学习C#的学习过程,此文章作为足迹以此记录,为后期巩固学习以及参考奠定基础。内容涉…...

小红书湖仓架构的跃迁之路
作者:李鹏霖(丁典),小红书-研发工程师,StarRocks Contributor & Apache Impala Committer 本文整理自小红书工程师在 StarRocks 年度峰会上的分享,介绍了小红书自助分析平台中,StarRocks 与 Iceberg 结合后&#x…...
pytorch高可用的设计策略和集成放大各自功能
在使用 PyTorch 编写模型时,为确保模型具备高可用性,可从模型设计、代码质量、训练过程、部署等多个方面采取相应的方法,以下为你详细介绍: 模型设计层面 模块化设计 实现方式:将模型拆分成多个小的、独立的模块,每个模块负责特定的功能。例如,在一个图像分类模型中,可…...

神经网络前向微分和后向微分区别
1. 计算顺序 前向微分(前向模式) 从输入到输出逐层计算:沿计算图的正向顺序(输入层 → 输出层),同时计算函数值和导数。 每一步同步更新导数:每个中间变量的导数随值一起计算,例如&…...
Android 创建一个全局通用的ViewModel
(推荐)使用ViewModelStore 代码示例: class MyApplication : Application(), ViewModelStoreOwner {private val mViewModelStore ViewModelStore()override fun onCreate() {super.onCreate()}override val viewModelStore: ViewModelSto…...

windows 利用nvm 管理node.js 2025最新版
1.首先在下载nvm 下载链接 2. 下载最新版本的nvm 3. 同意协议 注意:选择安装路径 之后一直下一步即可 可以取消勾选 open with Powershell 勾选后它会自动打开Powershell 这里选用cmd 输入以下命令查看是否安装成功 nvm version 查看已经安装的版本 我之前自…...

基于物联网技术的电动车防盗系统设计(论文+源码)
1总体设计 本课题为基于物联网技术的电动车防盗系统,在此将整个系统架构设计如图2.1所示,其采用STM32F103单片机为控制器,通过NEO-6M实现GPS定位功能,通过红外传感器检测电瓶是否离开位,通过Air202 NBIOT模块将当前的数…...
零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?
一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...
【位运算】消失的两个数字(hard)
消失的两个数字(hard) 题⽬描述:解法(位运算):Java 算法代码:更简便代码 题⽬链接:⾯试题 17.19. 消失的两个数字 题⽬描述: 给定⼀个数组,包含从 1 到 N 所有…...

CMake基础:构建流程详解
目录 1.CMake构建过程的基本流程 2.CMake构建的具体步骤 2.1.创建构建目录 2.2.使用 CMake 生成构建文件 2.3.编译和构建 2.4.清理构建文件 2.5.重新配置和构建 3.跨平台构建示例 4.工具链与交叉编译 5.CMake构建后的项目结构解析 5.1.CMake构建后的目录结构 5.2.构…...
Objective-C常用命名规范总结
【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名(Class Name)2.协议名(Protocol Name)3.方法名(Method Name)4.属性名(Property Name)5.局部变量/实例变量(Local / Instance Variables&…...
macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用
文章目录 问题现象问题原因解决办法 问题现象 macOS启动台(Launchpad)多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显,都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

如何将联系人从 iPhone 转移到 Android
从 iPhone 换到 Android 手机时,你可能需要保留重要的数据,例如通讯录。好在,将通讯录从 iPhone 转移到 Android 手机非常简单,你可以从本文中学习 6 种可靠的方法,确保随时保持连接,不错过任何信息。 第 1…...
代码随想录刷题day30
1、零钱兑换II 给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带…...

无人机侦测与反制技术的进展与应用
国家电网无人机侦测与反制技术的进展与应用 引言 随着无人机(无人驾驶飞行器,UAV)技术的快速发展,其在商业、娱乐和军事领域的广泛应用带来了新的安全挑战。特别是对于关键基础设施如电力系统,无人机的“黑飞”&…...
C++.OpenGL (20/64)混合(Blending)
混合(Blending) 透明效果核心原理 #mermaid-svg-SWG0UzVfJms7Sm3e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-icon{fill:#552222;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-text{fill…...
Oracle11g安装包
Oracle 11g安装包 适用于windows系统,64位 下载路径 oracle 11g 安装包...