昨日阅读2.5 h,累计 264 h
<Python编程:从入门到实践>
=====================
对项目先回顾回顾
增加功能:
让外星人群向两边和下方移动,直到外星人被全部击落,有外星人撞到飞船,或有外星人抵达屏幕底端。
若整群外星人都被击落,就再创建一群外星人,如果有外星人撞到飞船或抵达屏幕底部,将销毁飞船并再创建一群外星人。
限制玩家可用的飞船数量,配给的飞船用完后,游戏结束。
在给项目添加新功能前,需要审核代码。(新阶段,项目更复杂了,最好对混乱或低效的代码进行清理)
由于前面是不断重构代码的过程,因此需要清理的内容并不多,但每次调试,会造成一定的困难。为了关闭游戏快捷,增加一个按q键退出的功能。
game_functions.py
def check_keydown_events(event, ai_settings, screen, ship, bullets):
--snip---
elif event.key == pygame.K_q:
sys.exit()
创建一个外星人:
屏幕上放置外星人与放置飞船类似。其行为,由Alien类控制(类似于创建Ship类)
在images文件夹中,添加一个背景为灰色的外星人位图,.bmp文件
alien.py
import pygame
from pygame.sprite import Sprite
class Alien(Sprite):
def __init__(self, ai_settings, screen):
super(Alien, self).__init__()
self.screen = screen
self.ai_settings = ai_settings
self.image = pygame.image.load('images/alien.bmp')
self.rect = self.image.get_rect()
self.rect.x = self.rect.width
self.rect.y = self.rect.height
self.x = float(selft.rect.x) ##存储外星人的准确位置
def blitme(self):
self.screen.blit(self.image, self.rect)
在 alien_invasion.py主程序中创建一个Alien实例
在def run_game():中
alien = Alien(ai_settings, screen)
主循环中,修改:
gf.update_screen(ai_settings, screen ,ship, alien, bullets)
显然update_screen函数需要增加参数:alien
=====================
Blockchain:
228. 更广角度来讲,互补性货币体系和多重货币体系只是一个现象的具体应用,这一现象早已被用来重塑现代生活的许多其他领域。
多重货币系统是对货币、金融和金钱的细致深入化。
229. 持有成本货币除潜在价值损失和因此产生的“消费激励”之外,还有一个特征:在全网节点上可能会定期重新分配,这也可能是任意加密数字货币的特征。(激励货币持有者消费该货币)极端点来说,将货币运作与政策目标相关联的一个标志,该特征可为社会提供一个在民众中定期重新分配收入的手段。
230. 被管理的持有成本货币系统的一个明显局限:若激励不协调一致的话,可能会发现各种规避系统的聪明伎俩和漏洞。
231. 满足了基本生存需求的巨大潜在好处可能在于:它带来的可能不只是一个富足的时代,而且释放出了人类的认知盈余量,克将之用于从事其他更高位的兴趣、挑战和关注问题,从而构建出一个人类社会、合作与生产力的新纪元。
232. 持有成本概念与特性的可扩展性:不仅仅对于在一个多重货币社会里开发专用货币很有用,而且正如许多区块链概念一样,潜在可能扩展至更广阔的领域,超越货币、经济和金融系统这些场合。
233. 思想可以是那些协作型团队的可再分配货币,还有作为社会货币的自由、信任和同情。比特币在全社会重分配自由这项货币的意义上,其早已作为一种持有成本货币以及智能网络资源分配机制而得以实现。
234. 区块链行业仍然处于发展的早期,但现在仍然有非常多潜在的制约。
(有内部,也有外部)包括底层技术的一些技术问题、一些尚未结束的行业丑闻、偷窃、大众误解、政府监管以及主流对技术的采纳。
========================
昨日阅读2.5 h
累计 264 h