勤学思培训网RRHQXD
  • 总算晓得python怎么学好

    1python怎么学好

    在使用python的时候,经常会需要进行数据分析。而这个时候Quandl是比较常用的数据分析源,下面小编就给大家分享一下如何用Python搭配Quandl进行数据分析。以下是小编为你整理的python怎么学好

    首先打开CMD命令行,执行pip install sklearn命令安装sklearn包

    然后通过pip install quandl命令安装quandl包

    接下来我们通过pip install pandas安装pandas包


    [图片0]

    接下来我们在CMD命令行中通过import语句导入pandas和Quandl两个库

    然后我们可以登录Quandl的平台寻找要进行数据分析的Quandl Code

    接下来我们通过Quandl的get方法获取数据分析的数据源

    最后我们执行以后就会在CMD窗口看到如下图所示的数据源,我们只需要通过命令对数据源进行计算就可以达到分析的目的了

    2编写内容爬虫

    首先,给爬虫建立个目录,在项目里面和app同级,然后把这个目录变成一个python的package

    mkdir ~/python_spider/sfspider touch ~/python_spider/sfspider/

    以后,这个目录就叫爬虫包了

    在爬虫包里面建立一个用来装我的爬虫们

    vim ~/python_spider/sfspider/

    一个基本的爬虫,只需要下面几行代码:

    (代码下面会提供)然后呢,就可以玩玩我们的“爬虫”了。

    进入python shell

    >>> from sfspider import spider

    >>> s = ('')

    >>>

    >>> '/q/'

    >>> print ('h1#questionTitle').text()

    >>> 微信JS—SDK嵌套选择图片和上传图片接口,实现一键上传图片,遇到问题

    看吧,我现在已经可以通过爬虫获取segmentfault的提问标题了。下一步,为了简化代码,我把标题,回答等等的属性都写为这个蜘蛛的属性。代码如下

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

    import requests # requests作为我们的html客户端

    from pyquery import PyQuery as Pq # pyquery来操作dom

    class SegmentfaultQuestionSpider(object):

    def __init__(self, segmentfault_id): # 参数为在segmentfault上的id

    = '/q/{0}'.format(segmentfault_id)

    = None # 弄个这个来缓存获取到的html内容,一个蜘蛛应该之访问一次

    @property

    def dom(self): # 获取html内容

    if not :

    document = ()

    = 'utf-8'

    = Pq()

    return

    @property

    def title(self): # 让方法可以通过的方式访问 可以少打对括号

    return ('h1#questionTitle').text() # 关于选择器可以参考css selector或者jquery selector, 它们在pyquery下几乎都可以使用

    @property

    def content(self):

    return ('.').html() # 直接获取html 胆子就是大 以后再来过滤

    @property

    def answers(self):

    return list(() for answer in ('.').items()) # 记住,Pq实例的items方法是很有用的

    @property

    def tags(self):

    return ('--inline > li').text().split() # 获取tags,这里直接用text方法,再切分就行了。一般只要是文字内容,而且文字内容自己没有空格,逗号等,都可以这样弄,省事。

    然后,再把玩一下升级后的蜘蛛。

    >>> from sfspider import spider

    >>> s = ('')

    >>> print

    >>> 微信JS—SDK嵌套选择图片和上传图片接口,实现一键上传图片,遇到问题

    >>> print

    >>> # [故意省略] #

    >>> for answer in print answer

    >>> # [故意省略] #

    >>> print '/'.join()

    >>> 微信js-sdk/python/微信开发/javascript

    3列表生成式

    from collections import Iterable, Iterator # 引入包# 将列表生成式的方括号改成圆括号,返回结果就不是列表了,而是一个生成器。g = (i for i in range(10))print(g)

    print(isinstance(g, Iterator)) # 生成器属于迭代器。print(isinstance(g, Iterable)) # 生成器属于可迭代对象。print(isinstance('good', Iterator)) # 字符串等容器属于可迭代对象,但是不属于迭代器。


    [图片1]

    # 生成器每次被访问都会记录自己被访问的位置next(g) # 通过next()访问生成器中的下一个元素print(next(g))

    # for-in遍历生成器会直接从记录的位置访问到最后for i in g: print(i, end=' ')print()

    # next(g) # 访问到最后一个,就不能在访问了,否则崩溃g = (i for i in range(10))# 使用next()访问生成器中特定数量的数据# 生成器,访问一个加载一个,不访问不加载:俗称懒加载或惰性加载。for i in range(6): print(next(g))

    # 利用函数创建生成器def back_genarator(n): print() for i in range(n+1): print() yield i print()

    4如何使用

    环境配置:下载Python并安装,安装完成后,配置windows的环境变量:打开高级系统设置,将Python的安装目录添加到系统变量path中。配置完成后,在cmd命令行,输入命令"Python",出现Python版本号,即配置成功

    教程学习:上网百度下载一份Python教程,进行学习。初学者入门的话,没必要整份教程看一遍,只需要将基础的语法及模块挑出学习,如:字符串、列表、字典、元组、文件及数据库的操作

    上机实践:单纯地学习教程绝对是没法学好编程语言的,我们需要通过实践将理论知识转为实打实的技能。在学习的过程中,可以在Ulipad上尝试编写脚本,也可以将教程上的代码自己敲一遍。总之,一定要“多敲”