可以用来干什么 纳米技术可以用来干什么( 三 )


Pygame既是免费的也是开源的 。里面包含有计算机图形库和声音库 , 你可以利用这些可以来给你的应用增加互动功能 。
你可以用这个库来开发很多的游戏 。不管你选择要做哪一个 , 请随意把你的东西Pygame社区!
#9:选择你的冒险之旅
如果你更喜欢讲故事 , 用Python仍然可以开发出很酷的东西来 。
这门语言极其容易编写 , 是创作交互式小说的完美环境 。这个免费资源会指导你如何用Python编写一个文本型的冒险游戏的过程 。
教程需要掌握一些Python编程的基本知识 , 但是它能够帮助你弥补自己所了解的知识与如何运用这一知识到应用开发上之间的鸿沟 。
如果你希望将你的故事提升到新的水平 , 可以用类似Ren’Py这样的软件引擎添加声音和图像到你的游戏里面 , 创作出成熟的可视化小说 。(然后你可以把它放到Steam上看看大家的反应!获得对自己作品反馈的最好方式是把它发布到世界上)
#10:对机器学习说“Hell World!”
对于对人工智能感兴趣的任何人来说 , 机器学习是理解的关键领域 。然而 , 想要开始学习机器是很吓人的 , 而且这个领域发展很快 , 总是在变 。
幸运的时候 , 网上有很多资源可以帮助你试水一下再投入到数据科学的海洋之中 。Jason Brownlee的这门教程是关于用Python处理机器学习非常精彩的介绍 。
从中你将了解到其中一些最常见的机器学习算法 , 以及可以辅助你做出预测的Python库 。
这门教程极其简单而且非常容易学 。你可以在几个小时之内完成学习 。等你学完之后 , 就会对如何利用Python进行数据科学工作有了迅速的了解 。
如果你确认自己已经准备好进一步深入学习了 , 可以看看我们的海量数据科学教程 , 在这里你可以学习如何分析指纹、如何建立可视化 , 以及如何识别语音和面部 , 这一切都是用Python来做的 。
#11:接受挑战
如果你不确定要冒险尝试上述的一些较大型的项目 , 而小一点的你又不感兴趣的话 , 那你可能就会想还有其他可以练手的吗?怎么才能找到令你兴奋的东西呢?
编码挑战可以帮助你联系你的Python技能并且对你可以用Python做到的所有不同事情有初步了解 。
简而言之:给你一个问题 , 你必须用Python找到一个解决方案 。
你有机会开发对你有意义的问题的实现 , 但你也有机会通过提示来深入探究Python语言 。这些会告诉你应该导入哪些模块来帮助你解决挑战 。
编码挑战是以广度优先的方式尽可能多地学习库、方法、以及框架的好办法 。在这里保证你可以找到想要进一步探索的东西 。你可能甚至还会回到这份清单里面 , 并且发现你用来解决其中一个挑战的东西已经激起了你新的兴趣!
以下的挑战你可以试试:

  • The Python Challenge有20个多个关卡可供挑战 。创建小规模的Python脚本来找到相应关卡的解决方案 。互联网上到处都有相关解决方案的提示 , 不过最好还是自己找到解决办法!
  • PyBites Code Challenges的挑战也有50多个!这些挑战鼓励你通过开发应用完成任务来掌握Python 。
如果你打算自己搞定这些挑战而不是按照教程步骤去编码的话 , 那么找一份可以随时求助的资源总是好的 。当你在解决这些挑战时 , Python Tricks这本书是非常出色的案头信息源 。它会带领你探索Python不那么知名的地方 , 而那些地方正是你解决问题所需要的 。
Python可能不应该干的事情
显然Python是非常全能的语言 , 你可以用它来做很多事情 。但你没法用它来做完所有事情 。实际上 , 有些东西Python就不是很擅长 。
作为一门解释性语言 , Python跟设备驱动程序这样的底层设备打交道会比较麻烦 。比方说 , 如果你只想用Python来写一个操作系统的话会遇到问题 。底层应用最好还是坚持用C或者C++来写 。
然而 , 甚至这一断言恐怕也持续不了多久 。作为对Python灵活性的证明 , 有人正在致力于扩展Python在底层交互中的可用性的项目 。MicroPython只是其中之一 , 其目标就是为Python提供底层能力 。
如果我想做的东西没有出现在这份清单里面怎么办?
没关系!这份东西也不是面面俱到的——用Python你可以开发无数我们没有覆盖到的工具和应用 。不要把你自己局限在这份清单里面 。这只是一份资源 , 让你有个地方可以开始 。