百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

python山路十八弯之静态方法(python中静态方法的作用)

off999 2024-09-20 22:49 102 浏览 0 评论

1、语法:

定义:@staticmethod

def 方法名称(参数列表)

方法体

调用:类名.方法名(参数列表)

不建议通过对象访问静态方法

'''

list01=[["00","01","02","03"],

["10","11","12","13"],

["20","21","22","23"],

["30","31","32","33"],

]

class Vector02:

'''

二维向量

可以表示位置/方向。

'''

def __init__(self,x,y):

self.x=x

self.y=y

#函数表示左边

def left():

return Vector02(0,-1)

#函数表示右边

def right():

return Vector02(0,1)

def one():

return Vector02(-1,0)

def down():

return Vector02(1,0)

#作用:位置+方向

#左移

pox01=Vector02(1,2)

l01=left()

pox01.x+=l01.x

pox01.y+=l01.y

print(list01[pox01.x][pox01.y])

#右移

pox01=Vector02(1,2)

l01=right()

pox01.x+=l01.x

pox01.y+=l01.y

print(list01[pox01.x][pox01.y])

#向上移

pox01=Vector02(2,2)

l01=one()

pox01.x+=l01.x

pox01.y+=l01.y

print(list01[pox01.x][pox01.y])

pox01=Vector02(2,1)

l01=down()

pox01.x+=l01.x

pox01.y+=l01.y

print(list01[pox01.x][pox01.y])

#向右下移动

pox01=Vector02(0,1)

l01=rihgt_dow()

pox01.x+=l01.x

pox01.y-=l01.y

print(list01[pox01.x][pox01.y])

#右上

pox01=Vector02(2,2)

l01=Vector02(-1,1)

pox01.x+=l01.x

pox01.y+=l01.y

print(l01.x,l01.y)

print(list01[pox01.x][pox01.y])

#定义函数,获取位置 ,方向,数量

def get_elementl(target,vect_pox,vect_dir,count):

'''

获取指定位置的方向,数量

:param target: 列表

:param vect_pox: 位置

:param vect_dir: 方向

:param count: 数量

:return: 取出的值

'''

list_result=[]

for i in range(count):

vect_pox.x+=vect_dir.x

vect_pox.y+=vect_dir.y

elementl=list01[vect_pox.x][vect_pox.y]

list_result.append(elementl)

return list_result

wect=get_elementl(list01,Vector02(1,0), Vector02(0,1),3)

print(wect)

wert=get_elementl(list01,Vector02(2,3),Vector02(0,-1),2)

print(wert)

定义类方法

class DouleListHepiler:

@staticmethod

def get_elementl(target,vect_pox,vect_dir,count):

'''

获取指定位置的方向,数量

:param target: 列表

:param vect_pox: 位置

:param vect_dir: 方向

:param count: 数量

:return: 取出的值

'''

list_result=[]

for i in range(count):

vect_pox.x+=vect_dir.x

vect_pox.y+=vect_dir.y

elementl=list01[vect_pox.x][vect_pox.y]

list_result.append(elementl)

return list_result

wect=DouleListHepiler.get_elementl(list01,Vector02(1,0), Vector02(0,1),3)

print(wect)

wert=DouleListHepiler.get_elementl(list01,Vector02(2,3),Vector02(0,-1),2)

print(wert)

第二种方法:

class Vaue:

def __init__(self,x,y):

self.x=x

self.y=y

@staticmethod

def rite():

return Vaue(0,1)

@staticmethod

def lift():

return Vaue(0,-1)

class tart_yidong:

@staticmethod

def list_lift_rist(taget,rite,lift,count):

listyd=[]

for itme in range(count):

rite.x+=lift.x

rite.y+=lift.y

vaue=list01[rite.x][rite.y]

listyd.append(vaue)

return listyd

wet=tart_yidong.list_lift_rist(list01,Vaue(1,0),Vaue.rite(),3)

相关推荐

查看电脑ip地址的命令(查看电脑ip地址用什么命令)
查看电脑ip地址的命令(查看电脑ip地址用什么命令)

1、在“本地连接”的状态中查看。2、使用“ipconfig/all”命令查看。3、打开电脑网页,输入IP地址,点击确定,就能看到本机IP。扩展资料IP地址(InternetProtocolAddress),全称为网际协议地址,是一种在...

2025-12-30 10:03 off999

ie浏览器9(IE浏览器9.0如何升级)

1、首先,我们点击开始菜单,找到控制面板,点击一下。2、之后,找到程序和功能选项,点击一下。3、点击进入后,我们找到左边的打开或关闭windows功能,点击一下。4、点击进入后,找到Internet...

hp1020打印机驱动怎么下载(hp1020打印机驱动怎么下载)

惠普1020打印机驱动怎么安装:  1.首先到下载软件名称:惠普1020打印机驱动程序官方版(支持win7/8)32位/64位软件大小:5.09MB更新时间:2014-09-05立即下载  2.然后...

win2003是windows7系统(win2003哪个版本好)

win2003是专门用于服务器的操作系统,现在最主流的windows服务器系统主要是win2003server和win2008server,winXP是个人电脑专用的操作系统,现在微软已经不再提供XP...

路由器账号和密码忘了怎么办

你好,如果你忘记了路由器的用户名和密码,你可以尝试重置一下路由器,大多数路由器都配备了一个复位按键。在重置路由器之后,用户名和密码将被还原为默认值,你可以在路由器的用户手册或厂家网站上找到默认的用户名...

win10永久禁止自动更新(win10禁止自动更新彻底)

阻止Windows10自动更新的方法如下:使用“本地组策略编辑器”:按下“Win+R”键,输入“gpedit.msc”打开本地组策略编辑器,找到“计算机配置”>“管理模板”>“W...

联想笔记本怎么看配置和型号

联想笔记本看配置的方法如下1、打开电脑,点击桌面的计算机,右键菜单里选择【属性】;打开后,即可看到电脑系统的大概信息;2、如果要看比较详细的设备相关信息,点击桌面的计算机,点击右键,在菜单里选择【系统...

怎样把打印机连接到电脑上(怎么把打印机连接电脑上)
  • 怎样把打印机连接到电脑上(怎么把打印机连接电脑上)
  • 怎样把打印机连接到电脑上(怎么把打印机连接电脑上)
  • 怎样把打印机连接到电脑上(怎么把打印机连接电脑上)
  • 怎样把打印机连接到电脑上(怎么把打印机连接电脑上)
photoshop6序列号(photoshop8.01序列号)
  • photoshop6序列号(photoshop8.01序列号)
  • photoshop6序列号(photoshop8.01序列号)
  • photoshop6序列号(photoshop8.01序列号)
  • photoshop6序列号(photoshop8.01序列号)
win10下载应用商店(win10应用商店打不开)

1、点击Win10系统的开始菜单,然后在点击应用商店;2、打开Win10应用商店后,在搜索框里输入想要搜索的应用软件,然后点击检索;3、点击搜索到的应用,点击安装;4、点击安装后,系统会提示要切换到这...

dell电脑重装系统win10(dell 重装win10系统)

戴尔笔记本重装系统win10的步骤如下:制作好wepe启动盘之后,将win10系统iso镜像直接复制到U盘。在需要重装系统的戴尔电脑上插入pe启动盘,重启后不停按F12启动快捷键,调出启动菜单对话框,...

android升级包下载安装(android 升级包)

打开手机系统更新升级,前提是官方有新系统推送才能更新  哪个大不一定,但一般规律如下:  1、小版本的更新,通常越更新越大。比如3.1更新到3.2,通常是修复bug,代码量通常会增大,体积就会增大。 ...

hdd硬盘和ssd(ssd硬盘和hdd硬盘是什么意思)

HDD硬盘和SSD硬盘是两种不同类型的电脑存储设备,它们有着以下区别:1.工作原理:HDD硬盘使用机械旋转的磁盘和读写磁头来存储和读取数据,而SSD硬盘则使用闪存存储数据,类似于USB闪存盘。2....

电脑免费软件下载大全(电脑上免费的下载软件)

正常情况下,如果我们想要在自己的电脑上面下载一个不要钱的单机游戏,那么我们是可以直接在我们的软件管理中心进行一个下载的,这个时候我们只需要通过一个权限就能够正常的下载,当然我们也是可以在一些小游戏的软...

mpp文件转换excel(mpp转换成pdf)

要将Excel表格转换为MPP格式,您可以按照以下步骤操作:1.打开Excel表格并确保数据按照项目的不同阶段或任务进行组织。2.将Excel表格中的数据复制到一个新的MicrosoftProj...

取消回复欢迎 发表评论: