zoukankan      html  css  js  c++  java
  • 第一、二章——Python简介与Python基础

    前言:《Data Wrangling with Python》这本书主要是讲使用Pyhon来处理各种类型保存的数据的。


    第一章:Python简介

      1、版本选择

    本书选择的Python版本是2.7,并非最新的Python3,原文的说法是:想保证你能够找到容易阅读且容易获取的资源,并确保你的操作系统及服务支持你使用的Python版本。

    这个说法也是比较容易接受的,毕竟Python3刚出没多久,网上大部分公开的资源还是基于Python2的。但即使如此,我个人觉得还是要关注一下3与2的差别,与时俱进嘛。但这不是本书的重点所在,所以作为额外关注吧。

      2、Python安装

    在官网下载了Python2.7的MSI后可以直接安装,安装过程中选择添加path,会自动添加环境变量,我的是win10系统,不知在其他系统中是否会有此效果。

    若是没有便主动在path中添加吧(我的安装路径为:D:Python27)

    1)、D:Python27

    2)、D:Python27Libsite-packages(这个是我根据书本主动添加的,安装时并没有自动生成这个路径)

    3)、D:Python27Scripts

      3、测试Python安装

    安装完成以及配置好环境变量后,打开cmd,输入python,若是输出以下内容则证明安装成功。

    上面显示了我的Python版本,在>>>之后可以直接编写Python代码并执行,退出输入命令:exit()

    书中给了一组代码(输出的结果是有关Pyhon在计算机中的文件路径列表):

    >>> import sys
    >>> import pprint
    >>> pprint.pprint(sys.path)

     下面是两个错误输入的演示:

    1)、模块导入错误

    2)、拼写错误

      4、安装pip

    用于管理Python共享代码和库的命令行工具(书中说法,具体是什么还不清楚,等用到了再回来补充吧!)

      5、安装代码编辑器

      Sublime...本书中使用的代码都是在Sublime中编写,然后用命令行编译的,当然也有更方便的办法,比如PyCharm,Python的一个IDE,可以直接编写代码并且编译,类似于Java中的Eclipse,但是收费,可以破解,自行寻找方法。之前好像浏览到可以在Eclipse中安装Python插件,然后用Eclipse编译,不知道是否可行,我没有尝试。。。

    Python代码的文件名为xxx.py


    第二章:Python基础

      1、基本数据类型

        1.1、字符串

    Python的字符串要求没其他语言那么严格,只要求在成对的引号之间即可(单引号或双引号)。

        1.2、整数和浮点数

    1)整数

      python中整数是不能以0开头的,且赋值存储时不应加上引号,加引号的那是字符串(可以用0开头)。

    书中说以0开头会报语法错误(SystaxError,invalid token),既是无效的标记。但我直接输入0开头的数字时只是输出错误,并没有报错。

     

    2)浮点数

    在python中使用非整数时,Python默认将其转化为非整数。

    另外,看一个例子,关于浮点数精度的问题(原文:浮点数的运算速度很快,但正是因为这一点,浮点数不够精确)

    考虑精度的问题时,需要使用decimal模块(或库:https://decs.python.org/2/library/decimal.html

    例子:

    第一行代码导入了Decimal模块中的getcontext和Decimal;

    第二行代码是将舍入精度设定为一位小数

    附:

    Python中常用库:

    1)、decimal:用于定点运算和浮点运算

    2)、math:可以使用C语言标准所定义的数学函数

    3)、numpy:Python科学计算的基础包

    4)、sympy:用于符号数学的Python库

    5)、mpmath:用于任意精度实数和复数浮点运算的Python库

      2、数据容器

        2.1、变量

    规则:

    1)、可以包含下划线,不能使用连字符

    2)、可以包含数字,但不能以数字开头

    3)、单词用小写字母,单词间用下划线隔开

        2.2、列表

    列表是具有某种共同关系的一组值。

      ['milk','letter','eggs']

    列表置于方括号内,元素之间用逗号隔开(上面这个例子中元素是字符串,若是数字或是变量则不需要引号)

    可以将列表直接存入变量中:shopping_list = ['milk','lettuce','eggs']

    列表也可以保存变量,当列表保存的是变量,我们调用列表时,输出的是变量的值。

    例如:

    列表中也可以包含列表,如下:

     

        2.3、字典

    字典是一个key/value的集合,key可以是任意可被哈希(内部key被hash后作为索引)的类型。因此,key可以是文本、数字等任意类型。

    (如果两个数字'=='判断相等,那么key就相等,value会产生覆盖(例如:1 == 1.0 # => True)。浮点数比较很不精确,因此千万不要用浮点数作为key!)

    字典使用大括号{xxx}包含,元素包括键和值,键值用冒号隔开,不同元素之间用逗号隔开

     

    字典的内容很丰富,但本书只做简单介绍,之后学到了再补充吧

    直接存储列表:

     存储列表变量:

      3、各种数据类型的用途

        3.1、字符串

    —大小写转换

    —删除字符串末尾的空格

    —分割字符串

     

    删除空格strip()函数:

    上面的例子中把一个带有多个空格的字符串付给了变量filename,对其执行strip()函数之后,字符串中的前后空格都被删除,中间空格未被删除。

    大写upper()函数:

        3.2、整数和小数

    —加减运算

    —简单数学运算

    以上例子说明Pyhon列表支持加法,却不支持减法(字符串会支持减法吗,怎么可能)

         3.3、列表

    —在列表中增加或删除元素

    —删除列表中的最后一个元素

    —列表重新排列

    —列表排序

    增加元素函数append()与删除元素函数remove():

    上面的例子中,首先定义了一个空的列表dog_names,然后通过append()函数给其添加元素,然后又用remove()函数移出该元素。

        3.4、字典

    —增加一个键/值对

    —将指定的键设置为新的值

    —利用键查找值

     

    注意字典添加元素与列表添加元素的区别。

    keys()函数查询到的是一个字典中所有的键。

    当你查询到某个键的值的时候,可以赋给一个变量:dogs = animal_counts['dogs'],这样就可以不用特地去记住或者重新查询了。。。



    附录:type、dir、help

    1、type可以用于确定数据类型

    2、dir会返回一个内置方法和属性的列表

    3、help会返回对象、方法或模块的帮助文档

     

  • 相关阅读:
    异常测试之Socket网络异常
    关于文件的INode与Java中的文件操作接口
    java程序中获取kerberos登陆hadoop
    团队游戏的那些事
    细说内测
    如何搭建视频转码集群、播放服务器
    PropertyPlaceHolderConfigurer中的location是不是用错了?
    浅谈java classloader
    foreach写失效的问题
    ArcGIS中的WKID
  • 原文地址:https://www.cnblogs.com/huangtao36/p/7624878.html
Copyright © 2011-2022 走看看