Python 知名有趣的项目 及常见问题

时间:2021-10-21 08:57:23

一.有趣的项目

• The Django Tutorial 试着用 Django Web Framework 创建一个 web 应用。

• SciPy 如果你对科学,数学,还有工程感兴趣的话。如果你想结合 SciPy 或者别的代码写篇美观
的论文,你还可以看看 Dexy。
• PyGame 看看能不能写出一个带图形界面和声音的游戏出来。
• Pandas 用来做数据处理和分析。
• Natural Language Tool Kit 用来分析文本,以及实现垃圾邮件过滤和自动聊天机器人这样的软
件。
• Requests 学习一下用户端 HTTP 以及 web 知识。
• SimpleCV 让你的计算机看到真实世界里的东西。
• ScraPy 遍历并攫取网站内容。
• Panda3D 设计 3D 图形界面和游戏。
• Kivy 桌面和移动平台的用户界面开发。
• SciKit-Learn 实现机器学习应用。
• Ren’Py 实现交互式角色扮演游戏,和本书中的游戏类似,不过多了图形界面。
• Learn C The Hard Way 等你熟悉 Python 后试着用我写的别的书学习 C 和算法。慢慢来,C

是一门不同的语言,不过很值得学习。

python 知名站点

1.http://uliweb.clkg.org/forum#

2.http://rsj217.diandian.com/

3.http://django-china.cn/

4.http://www.the5fire.com/

5.http://thinkinside.tk http://blog.csdn.net/thinkinside

6.http://pinaxproject.com/

7.http://qinxuye.me/

8.http://pycoders-weekly-chinese.readthedocs.org/en/latest/index.html

9.http://www.webrube.com/

10.http://simeonfranklin.com/blog/

11.http://www.pythonclub.org/python-files/start

12.http://jerrypeng.me/

工具类:


    Requests: 一个更简洁、实用的python http库,虽然他是对原生的封装,但是接口更加人性化,个人感觉比用原生更顺手和方便(我一直怀疑是我太蠢学不透原生,经常用着用着出问题)。官方地址
    BeautifulSoup: Python下类似jSoup的HTML/XML的解析器。官方文档
    python-goose:HTML内容提取库,能提取一个html中,主要的内容、图片、以及一些描述信息。这货还支持去掉停用词(比如的、地、了这些没有借鉴意义的词汇,取消停用词主要用在数据挖掘中、搜索引擎的排序、还有自然语言处理中)。GitHub
    python-oauth2:python的oauth认证库。GitHub
    pinyin.py: Python汉字转拼音库。GitHub

Web框架类:


    Flask:Flask 是一个用于 Python 的微型网络开发框架。官方文档
    Web.py:同样是一个mini web框架。(感觉是句废话…明明跟上面说的一样…不过说真的,他们之间的差别只有用过才能体会到,而且没有好与坏,只有适不适合自己)。官方文档
    django: python下大型web框架,支持ORM,自动创建管理面板,支持模板,支持URL美化,支持Cache等… 据说django以前特别悲催,后来被解救了,然后就大发了,人们把他拍成了一部电影《被解救的django》,同样推荐。

跨平台App框架:


kivy: 跨平台开发桌面应用,支持Windows/Linux/Android… 是一个令人振奋人心的项目。官方网址


二.常见问题

2.1 ASCII码

UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-78: ordinal not in range(128)

原因

Python2默认编码方式是ascii,所以调用ascii编码解码程序去处理字符流,当字符流不属于ascii范围内,就会抛出异常(ordinal not in range(128))

解决方法

1.以UTF-8打开

fp = codecs.open(‘output.txt’, ‘a+’, ‘utf-8′);

2.改变默认编码方式

import sys
reload(sys)
sys.setdefaultencoding('utf-8')

2.2 中文编码

# coding=utf-8
# -*- coding:utf-8 -*-