zoukankan      html  css  js  c++  java
  • Python学习笔记(二)--变量和数据类型

    • python中的数据类型

    • python中什么是变量

    • python中定义字符串

    • raw字符串与Unicode字符串

    • python中的整数和浮点数

    • python中的bool类型



    • python中的数据类型

    • 整数

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

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

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

    • 布尔值和布尔代数的表示完全一致,一个布尔值只有True、False两种值,要么是True,要么是False,在Python中,可以直接用True、False表示布尔值(请注意大小写),也可以通过布尔运算计算出来。
    • 布尔值可以用and、or和not运算。
    • and运算是与运算,只有所有都为 True,and运算结果才是 True。
    • or运算是或运算,只要其中有一个为 True,or 运算结果就是 True。
    • not运算是非运算,它是一个单目运算符,把 True 变成 False,False 变成 True。
    • 空值

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



    • python中什么是变量

    • 这是相较与之前学习的C一类不同的,不用定义。直接赋值就行

    a = 123 # a是整数

    print a

    a = 'imooc' # a变为字符串

    print a

    • 命名遵守变量名必须是大小写英文、数字和下划线(_)的组合,且不能用数字开头


    • python中定义字符串

    • 字符串可以用''或者""括起来表示。
    • 如果字符串本身包含'怎么办?比如我们要表示字符串 I'm OK ,这时,可以用" "括起来表示:

    "I'm OK"

    • 类似的,如果字符串包含",我们就可以用' '括起来表示:

    'Learn "Python" in imooc'

    • 如果字符串既包含'又包含"怎么办?
    • 这个时候,就需要对字符串的某些特殊字符进行“转义”,Python字符串用进行转义。
    • 要表示字符串 Bob said "I'm OK".由于 ' 和 " 会引起歧义,因此,我们在它前面插入一个表示这是一个普通字符,不代表字符串的起始,因此,这个字符串又可以表示为

    'Bob said "I'm OK".'

    • 注意:转义字符 不计入字符串的内容中。

    常用的转义字符还有:

    表示换行

    表示一个制表符

    \ 表示 字符本身


    • raw字符串与Unicode字符串

    • 如果一个字符串包含很多需要转义的字符,对每一个字符都进行转义会很麻烦。为了避免这种情况,我们可以在字符串前面加个前缀 r ,表示这是一个 raw 字符串,里面的字符就不需要转义了。
    • Python在后来添加了对Unicode的支持,以Unicode表示的字符串用u'...'表示,比如:

    print u'中文'
    中文

    注意: 不加 u ,中文就不能正常显示。
    Unicode字符串除了多了一个 u 之外,与普通字符串没啥区别,转义字符和多行表示法仍然有效:
    • 如果中文字符串在Python环境下遇到 UnicodeDecodeError,这是因为.py文件保存的格式有问题。可以在第一行添加注释

    '# -- coding: utf-8 --'


    • python中的整数和浮点数的运算

    • python中整数与浮点数能混合运算,需要注意和数学运算不同的地方是,Python的整数运算结果仍然是整数,浮点数运算结果仍然是浮点数,但整数和浮点数运算就会变成浮点数


    • python中的bool类型

    • 与运算:只有两个布尔值都为 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

    • 1. 在计算 a and b 时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。
    • 2. 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。

  • 相关阅读:
    Windows Azure Cloud Service (14) 使用Windows Azure诊断收集日志记录数据
    Windows Azure Cloud Service (13) 用Visual Studio 2010 将应用程序部署到Windows Azure平台
    Windows Azure Cloud Service (15) 多个VM Instance场景下如何处理ASP.NET Session
    Windows Azure Storage (5) Windows Azure Drive
    Windows Azure Storage (7) 使用工具管理Windows Azure Storage
    SQL Azure(二) SQL Azure vs SQL Server
    webbrowser的自动提交
    提取视频的背景声音的软件
    Listview列排序的bug原因
    两个奇怪的问题
  • 原文地址:https://www.cnblogs.com/SwordX/p/7868922.html
Copyright © 2011-2022 走看看