python编程-类结构,lambda语法,原始字符串

devtools/2025/2/8 9:51:54/

一个类的基本结构包括以下部分:

类名:用来描述具有相同属性和方法的对象的集合。
属性:类变量或实例变量,用于处理类及其实例对象的相关数据。
方法:在类中定义的函数,用于执行特定操作。
构造器:初始化方法,用于在对象实例化时自动调用,通常用来设置对象的初始状态。
析构器:在对象被销毁时自动调用,用于释放资源或执行清理操作。
__str__方法:用于自定义对象的字符串表示形式,方便打印和调试。

python">class MyClass:# 类变量,所有实例共享class_variable = 0def __init__(self, instance_variable):# 构造器,用于初始化实例变量self.instance_variable = instance_variableMyClass.class_variable += 1  # 每创建一个实例,类变量加1print(f"构造器被调用,实例变量: {self.instance_variable}, 类变量: {MyClass.class_variable}")def my_method(self):# 实例方法,用于执行特定操作print(f"实例方法被调用,实例变量: {self.instance_variable}")def __del__(self):# 析构器,在对象被销毁时自动调用MyClass.class_variable -= 1  # 每销毁一个实例,类变量减1print(f"析构器被调用,类变量: {MyClass.class_variable}")def __str__(self):# __str__方法,用于自定义对象的字符串表示形式return f"MyClass实例,实例变量: {self.instance_variable}"# 创建类的实例
my_instance = MyClass(10)
my_instance.my_method()  # 调用实例方法# 打印对象的字符串表示形式
print(my_instance)# 删除实例(在Python中,显式删除不是必须的,因为垃圾回收机制会自动处理)
del my_instance

lambda语法

python"># 使用lambda作为参数传递给map函数,实现对列表中每个元素的平方
lst = [1, 2, 3, 4, 5]
squared_lst = list(map(lambda x: x**2, lst))
print(squared_lst) # [1, 4, 9, 16, 25]# 使用lambda作为参数传递给filter函数,实现对列表中的偶数进行筛选
lst = [1, 2, 3, 4, 5]
even_lst = list(filter(lambda x: x % 2 == 0, lst))
print(even_lst) # [2, 4]# 使用lambda作为参数传递给reduce函数,实现对列表中所有元素的求和
from functools import reduce
lst = [1, 2, 3, 4, 5]
sum = reduce(lambda x, y: x + y, lst)
print(sum) # 15


f 是一个非常常见的 Python 语法,它被称为 "f-string"(formatted string literals)。
在 Python 3.6 及以后的版本中,f-string 被引入作为一种更加方便和灵活的字符串格式化方式。它使用花括号 {} 来包裹变量或表达式,可以直接将它们插入到字符串中。

python">new_filename = f"{file_base_name}{new_suffix}{file_extension}"

r接字符串 
Python中原始字符串的概念
在Python中,原始字符串(raw string)是一种特殊的字符串表示方式,它通过在字符串前加上r或R来表示。在原始字符串中,反斜杠\会被视为普通字符,而不会作为转义符。这意味着,在原始字符串中,我们不需要对反斜杠进行额外的转义操作。

原始字符串的用途
原始字符串常用于需要大量反斜杠的场景,如文件路径和正则表达式等。使用原始字符串可以使代码更加简洁易读,避免因为转义字符而导致的混淆。

文件路径
在Windows系统中,文件路径通常使用反斜杠来表示。然而,在普通字符串中,反斜杠被用作转义字符,因此在表示文件路径时需要使用双反斜杠。而使用原始字符串,则可以直接使用单个反斜杠来表示文件路径。

python"># 普通字符串表示文件路径
file_path = "C:\\path\\to\\file.txt"
print(file_path)# 原始字符串表示文件路径
raw_file_path = r"C:\path\to\file.txt"
print(raw_file_path)import re# 普通字符串表示正则表达式
pattern = "\\d{4}-\\d{2}-\\d{2}"
date_str = "Today is 2022-01-01."
match = re.search(pattern, date_str)
print(match.group())# 原始字符串表示正则表达式
raw_pattern = r"\d{4}-\d{2}-\d{2}"
raw_match = re.search(raw_pattern, date_str)
print(raw_match.group())


http://www.ppmy.cn/devtools/157068.html

相关文章

TCN时间卷积神经网络多变量多步光伏功率预测(Matlab)

代码下载:TCN时间卷积神经网络多变量多步光伏功率预测(Matlab) TCN时间卷积神经网络多变量多步光伏功率预测 一、引言 1.1、研究背景和意义 随着全球能源危机的加剧和环保意识的提升,可再生能源,尤其是太阳能&…

ubuntu20.04+RTX4060Ti大模型环境安装

装显卡驱动 这里是重点,因为我是跑深度学习的,要用CUDA,所以必须得装官方的驱动,Ubuntu的附件驱动可能不太行. 进入官网https://www.nvidia.cn/geforce/drivers/,选择类型,最新版本下载。 挨个运行&#…

云上考场微信小程序的设计与实现(LW+源码+讲解)

专注于大学生项目实战开发,讲解,毕业答疑辅导,欢迎高校老师/同行前辈交流合作✌。 技术范围:SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:…

2025Java面试题超详细整理《微服务篇》

什么是微服务架构? 微服务框架是将某个应用程序开发划分为许多独立小型服务,实现敏捷开发和部署,这些服务一般围绕业务规则进行构建,可以用不同的语言开发,使用不同的数据存储,最终使得每个服务运行在自己…

k8s,1.修改容器内主机名和/etc/hosts 文件,2.root特权容器,3.pod安全策略(基于名称空间

1.修改容器内主机名和/etc/hosts 文件,让持久生效,通过修改资源清单方式---kind: PodapiVersion: v1metadata:name: rootspec:hostname: myhost # 修改主机名hostAliases: # 修改 /etc/hosts- ip: 192.168.88.240 # IP 地址hostnames: # 名…

七。自定义数据集 使用tensorflow框架实现逻辑回归并保存模型,然后保存模型后再加载模型进行预测

import tensorflow as tf import numpy as np # 自定义数据集类 class CustomDataset(tf.data.Dataset): def __init__(self, x_data, y_data): self.x_data tf.convert_to_tensor(x_data, dtypetf.float32) self.y_data tf.convert_to_tensor(y_data, …

图论——环检测

环检测以及拓扑排序 前言复习模版环检测-DFS版本环检测- BFS版本 前言 我觉得学习这些之前,一定要对图的数据结构和抽象模型有概念,并且图构建的代码模版应该手到擒来,不然还是挺折磨的,不是这差一点就是那差一点,写道力扣卡卡的非常烦人. 复习模版 我觉得单拿出来再说这个模…

Spring Boot整合MQTT

MQTT是基于代理的轻量级的消息发布订阅传输协议。 1、下载安装代理 进入mosquitto下载地址:Download | Eclipse Mosquitto,进行下载,以win版本为例 下载完成后,在本地文件夹找到下载的代理安装文件 使用管理员身份打开安装 安装…