美文网首页
Python学习笔记(一)

Python学习笔记(一)

作者: Esther的异想空间 | 来源:发表于2017-10-10 16:41 被阅读0次

    一、简介

    Python 是世界上十大流行的编程语言之一。

    • 创始人:龟叔 Guido van Rossum 荷兰人
    • 特点: 优雅、明确、简单
    • 适合的领域: web网站和各种网站服务;工具脚本
    • 缺点:Python源码不能加密

    二、Python的变量和数据类型

    1、数据类型
    • 整数
      Python可以处理任意大小的整数,当然包括负整数,在Python程序中,整数的表示方法和数学上的写法一模一样,例如:1100-80800,等等。
      计算机由于使用二进制,所以,有时候用十六进制表示整数比较方便,十六进制用0x前缀和0-9,a-f表示,例如:0xff000xa5b4c3d2,等等。

    • 浮点数
      浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23x109和12.3x108是相等的。浮点数可以用数学写法,如1.233.14-9.01,等等。但是对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x10^9就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等等。
      整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差。

    • 字符串

      字符串是以''""括起来的任意文本,比如'abc'"xyz"等等。请注意,''""本身只是一种表示方式,不是字符串的一部分,因此,字符串'abc'只有a,b,c这3个字符。

    • 布尔值

      布尔值和布尔代数的表示完全一致,一个布尔值只有TrueFalse两种值,要么是True,要么是False,在Python中,可以直接用TrueFalse表示布尔值(请注意大小写),也可以通过布尔运算计算出来。

      布尔值可以用andornot运算。

      and运算是与运算,只有所有都为 True,and运算结果才是 True。
      or运算是或运算,只要其中有一个为 True,or 运算结果就是 True。
      not运算是非运算,它是一个单目运算符,把 True 变成 False,False 变成 True。

    • 空值
      空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。

    2、Python之print语句

    print语句可以向屏幕上输出指定的文字。比如输出'hello, world',用代码实现如下:
    >>> print 'hello, world'
    注意:
    1.当我们在Python交互式环境下编写代码时,>>>是Python解释器的提示符,不是代码的一部分。

    2.当我们在文本编辑器中编写代码时,千万不要自己添加 >>>。print语句也可以跟上多个字符串,用逗号“,”隔开,就可以连成一串输出:

    >>> print 'The quick brown fox', 'jumps over', 'the lazy dog'  
     The quick brown fox jumps over the lazy dog
    

    print会依次打印每个字符串,遇到逗号“,”会输出一个空格,因此,输出的字符串是这样拼起来的:


    print也可以打印整数,或者计算结果:

    >>> print 300
    300   #运行结果
    >>> print 100 + 200
    300   #运行结果
    

    因此,我们可以把计算100 + 200的结果打印得更漂亮一点:

    >>> print '100 + 200 =', 100 + 200
    100 + 200 = 300   #运行结果
    

    注意: 对于100 + 200,Python解释器自动计算出结果300,但是,'100 + 200 ='是字符串而非数学公式,Python把它视为字符串,请自行解释上述打印结果。

    3.注释

    Python的注释以#开头,后面的文字直到行尾都算注释

    # 这一行全部都是注释...
    print 'hello' # 这也是注释
    # 暂时不想运行下面一行代码:
    # print 'hello, python.'
    
    4.变量

    在Python程序中,变量是用一个变量名表示,变量名必须是大小写英文、数字和下划线(_)的组合,且不能用数字开头。

    5.Python中raw字符串与多行字符串

    如果一个字符串包含很多需要转义的字符,对每一个字符都进行转义会很麻烦。为了避免这种情况,我们可以在字符串前面加个前缀r,表示这是一个 raw 字符串,里面的字符就不需要转义了。例如:

    r'\(~_~)/ \(~_~)/'
    

    但是r'...'表示法不能表示多行字符串,也不能表示包含'"的字符串(为什么?)
    如果要表示多行字符串,可以用'''...'''表示:

    '''Line 1
    Line 2
    Line 3'''
    

    上面这个字符串的表示方法和下面的是完全一样的:

    'Line 1\nLine 2\nLine 3'

    还可以在多行字符串前面添加r,把这个多行字符串也变成一个raw字符串:

    r'''Python is created by "Guido".
    It is free and easy to learn.
    Let's start learn Python in imooc!'''
    
    6.Python中整数和浮点数

    和数学运算不同的地方是,Python的整数运算结果仍然是整数,浮点数运算结果仍然是浮点数:

    1 + 2    # ==> 整数 3
    1.0 + 2.0    # ==> 浮点数 3.0
    

    但是整数和浮点数混合运算的结果就变成浮点数了:

    1 + 2.0    # ==> 浮点数 3.0
    

    为什么要区分整数运算和浮点数运算呢?这是因为整数运算的结果永远是精确的,而浮点数运算的结果不一定精确,因为计算机内存再大,也无法精确表示出无限循环小数,比如 0.1 换成二进制表示就是无限循环小数。
    那整数的除法运算遇到除不尽的时候,结果难道不是浮点数吗?我们来试一下:

    11 / 4    # ==> 2
    

    令很多初学者惊讶的是,Python的整数除法,即使除不尽,结果仍然是整数,余数直接被扔掉。不过,Python提供了一个求余的运算 % 可以计算余数:

    11 % 4    # ==> 3
    

    如果我们要计算 11 / 4 的精确结果,按照“整数和浮点数混合运算的结果是浮点数”的法则,把两个数中的一个变成浮点数再运算就没问题了:

    11.0 / 4    # ==> 2.75
    
    7.Python中布尔类型

    与运算:只有两个布尔值都为 True 时,计算结果才为 True。

    True and True   # ==> True
    True and False   # ==> False
    False and True   # ==> False
    False and False   # ==> False
    

    或运算:只要有一个布尔值为 True,计算结果就是 True。

    True or True   # ==> True
    True or False   # ==> True
    False or True   # ==> True
    False or False   # ==> False
    

    非运算:把True变为False,或者把False变为True:

    not True   # ==> False
    not False   # ==> True
    

    在Python中,布尔类型还可以与其他数据类型做 and、or和not运算,请看下面的代码:

    a = True
    print a and 'a=T' or 'a=F'
    

    计算结果不是布尔类型,而是字符串 'a=T',这是为什么呢?

    因为Python把0、空字符串''和None看成 False,其他数值和非空字符串都看成 True,所以:

    True and 'a=T' 计算结果是 'a=T'
    继续计算 'a=T' or 'a=F' 计算结果还是 'a=T'
    

    相关文章

      网友评论

          本文标题:Python学习笔记(一)

          本文链接:https://www.haomeiwen.com/subject/cikiittx.html