Python中@property的粗略理解

本文介绍Python中@property装饰器的使用方法,并演示如何通过它实现对类属性的有效验证及设置。具体示例展示了学生类成绩属性的设置与获取。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

代码:

 

# -*- coding:utf-8 -*-
#!/usr/bin/env python

class Student(object):
    @property
    def get_score(self):
        return self._score

    @get_score.setter
    def set_score(self, value):
        if not isinstance(value, int):
            raise ValueError('score must be an integer!')
        if value < 0 or value > 100:
            raise ValueError('score must between 0 ~ 100!')
        self._score = value
s=Student()
s.set_score=60
print s.get_score

注意:这里 s.get_score 而不是 s.get_score()

 

 

@property装饰器把get_score方法变成属性调用

而在set_score方法上加上@get_score.setter意思是get_score方法中的属性是通过set_score来设置的


 

### Alpha_Shaper 的功能概述 Alpha_Shaper 是 Gaea 中的一个重要节点,主要用于定义地形的基本形状并提供灵活的编辑选项。它能够帮助用户快速构建地形的基础框架,并支持进一步细化和修饰。以下是关于如何在三维建模中使用 Alpha_Shaper 进行地形设计的具体说明。 #### 1. 基本概念与工作原理 Alpha_Shaper 提供了一种直观的方式来绘制和雕刻地形轮廓。它可以与其他 Profile 类别的节点(如 Fractal Terrace 和 Recurve)结合使用,以实现复杂的地形效果。该节点的核心功能在于其强大的绘图工具集,使用户可以通过简单的界面交互完成复杂的设计任务[^1]。 #### 2. 创建基本地形 要开始使用 Alpha_Shaper 构建地形模型,请按照以下方法设置初始参数: - **启动 Alpha_Shaper**: 将 Alpha_Shaper 节点拖放到项目画布上。 - **设定范围与分辨率**: 配置输入网格的大小以及分辨率,以便获得所需的精度。 - **绘制基础形状**: 利用内置笔刷工具,在视口中手动画出地形的主要形态。此阶段的目标是建立一个粗略但完整的地形骨架。 ```python import gea_api as gae # 初始化 Alpha_Shaper 实例 shaper = gae.create_node('Alpha_Shaper') # 设置地形尺寸 shaper.set_property('Size', (100, 100)) # 定义 X 和 Y 方向上的长度单位 shaper.set_property('Resolution', 512) # 设定像素级分辨率 ``` #### 3. 细化地形特征 为了增强地形的真实感,可以引入其他辅助节点配合 Alpha_Shaper 工作: - **应用 SoftClip**: 对于某些区域执行柔和裁剪操作,减少尖锐边缘的影响。 - **添加 Fractal Terrace 效果**: 插入分形梯田结构,增加地貌层次感。 - **调节 Recurve 参数**: 修改高度曲线分布,让整体外观更加圆润或者陡峭。 ```python soft_clip = gae.add_node_after(shaper, 'SoftClip') fractal_terraces = gae.insert_between(soft_clip, shaper, 'Fractal_Terrace') recurve_modifier = gae.connect_to_end(fractal_terraces, 'Recurve') # 自定义各模块属性值 soft_clip.set_strength(0.75) fractal_terraces.enable_fractals(True) recurve_modifier.apply_curve('SineWave') # 或者选择其他预设模式 ``` #### 4. 导出最终成果 当所有调整完成后,可将生成的数据导出至外部文件格式,方便导入到主流三维软件包中继续加工或渲染。 - 支持 FBX、OBJ 等常见交换标准。 - 可选保留 UV 映射信息便于贴图映射。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值