这个周末要做的是设计王者荣耀人物的人物结构,用python打印出英雄及其属性。今天是揭晓答案的时候。

王者荣耀人物繁多,虽分为六个大类,有的人物却会在不同的类别里重复出现。而人物的属性也有很多,在三个大类别下还有细分。我原来的思路是按照用户界面显示来写程序的逻辑,但是即使我用了两层嵌套也无法表示出和用户界面一样的数据结构。

看了大大的代码以后我问了大大这样一个问题:是不是代码嵌套的层数越少越好?

大大给的回复是:代码越简单越好,奥姆剃刀。里面最基本的思想,就是把人物和具有属性抽象出来,而不是根据显示来决定数据结构。

于是我有如下的理解:显示给用户的界面可以很复杂,但是它内在的代码是简单的重复。

下图是python大大的代码

图片发自简书App

图片发自简书App

我跟着大大又敲了一遍

图片发自简书App

图片发自简书App

这样的代码非常简洁,只是在列表里嵌套了一层字典。即使需要修改列表或者字典都可以直接修改而不需要改动后面的循环里的代码。比如我想再添加一个英雄,或者给某一个英雄添加一些属性,只需要在列表或者字典里直接修改而不需要改动后面的代码,这对于代码的修改提供了方便。

图片发自简书App

图片发自简书App

我加了一个人物曹操,同时又在他的性能里添加了移速,这都不需要改动其他代码。

python人物代码_Python设计王者荣耀人物结构(64)*相关推荐

  1. python面向对象实例王者荣耀_Python设计王者荣耀人物结构(63)*

    今天我们作为游戏程序员,设计王者荣耀人物结构.王者荣耀,玩家可以选择很多英雄,每种英雄有很多属性,请用我们学过的list和字典,将这些内容表达出来,并用循环遍历你创造的英雄,并打印出他们的属性出来. ...

  2. python敏感词过滤代码简单代码_Python 实现王者荣耀中的敏感词过滤示例

    Python 实现王者荣耀中的敏感词过滤示例 王者荣耀的火爆就不用说了,但是一局中总会有那么几个挂机的,总能看到有些人在骂人,我们发现,当你输入一些常见的辱骂性词汇时,系统会自动将该词变成" ...

  3. python全套壁纸_python下载王者荣耀官网的全部高清壁纸

    python代码: import os import requests import json from urllib import parse path='E:\\me\\wallpaper\\wz ...

  4. python小助手_Python实现王者荣耀小助手(二)

    #-*- coding: utf-8 -*-#!/usr/bin/env python#@Time : 2018/6/15 17:12#@Desc :#@File : KingGlory.py#@So ...

  5. 20行Python代码爬取王者荣耀全英雄皮肤改进版

    0 写在前面 看了大神的这篇CSDN:20行Python代码爬取王者荣耀全英雄皮肤访问量那么高,忍不住想要蹭一下热点,但是蹭归蹭,总得有点货才行,于是我品我细品,发现其代码总体有三点我觉得值得改进的地 ...

  6. [转载]20行Python代码爬取王者荣耀全英雄皮肤

    20行Python代码爬取王者荣耀全英雄皮肤,这是高手.原文链接: https://blog.csdn.net/qq_42453117/article/details/103190981 除了语言学习 ...

  7. Python如何爬取《王者荣耀盒子》APP

    Python如何爬取<王者荣耀盒子>APP 1.安装fiddler 百度网盘下载链接:https://pan.baidu.com/s/1EjGfVrYpAaweitUxv7DS8w 提取码 ...

  8. HTML5期末大作业:游戏类网站设计——王者荣耀(60页) HTML+CSS+JavaScript

    常见网页设计作业题材有 ​​个人. 美食. 公司. 学校. 旅游. 电商. 宠物. 电器. 茶叶. 家居. 酒店. 舞蹈. 动漫. 明星. 服装. 体育. 化妆品. 物流. 环保. 书籍. 婚纱. 游 ...

  9. 简单20行代码爬取王者荣耀官网1080p壁纸

    简单20行代码爬取王者荣耀官网1080p壁纸 # -*- coding: utf-8 -*- # @Time : 2020/12/13 18:08 # @Author : ningfangcong i ...

最新文章

  1. shell编程中for/while/util/case/select/break/continue
  2. 802.11帧聚合技术
  3. OS / Linux / pthread_join() 和 pthread_detach() 函数区别
  4. 对MariaDB10.0的Sphinx进行扩展
  5. 第11章 递归分形树(《Python趣味创意编程》教学视频)
  6. VS2017无法保存工具栏布局信息
  7. xz1刷Android10,索尼xz1国行版安卓9.0固件
  8. ShenYu 网关部署趟的坑
  9. Unity(三)EasyTouch5的使用
  10. 自制太阳能手机充电器
  11. 借你的名字,诵念尘世的幸福
  12. akka typed mysql_akka-typed(8) - CQRS读写分离模式
  13. 罗马音平假字复制_全部日文平假字翻译
  14. 大华sdk(java)上传人脸图片到人脸库,订阅人脸识别对比
  15. 关于android读取用户号码,手机串号,SIM卡序列号
  16. 用java编写图形用户界面_Java编写图形用户界面程序
  17. java实现腾讯云直播
  18. startup_LPC17XX.s 启动文件分析
  19. 计算机超级工作站,【八核高性能计算超级计算机CAECADCAM有限元超级工作站】.docx...
  20. 05Linux 第2天 进阶指令

热门文章

  1. python 文件缓存
  2. Word插入题注优化(自动删除标签与编号前的空格,编号后添加空格)
  3. 为触屏手机而设计系列1——拇指操作的“热区/死角”与“控件尺寸”
  4. Oracle卸载卸不干净,Oracle彻底删除的办法(winxp)
  5. 海思系统开发——linux下挂载SD卡
  6. mysql中的unix_timestamp函数
  7. 苹果⼿手机实时和历史位置定位指南
  8. h5页面跳转到微信小程序之利用URL Scheme接口
  9. 高数学习笔记(一):常用重要概念
  10. flutter 九宫格菜单_Flutter 仿微信/微博九宫格