python基础(2)-数据类型

10.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还提供了列表、字典等多种数据类型,还允许创建自定义数据类型,我们后面会继续讲到
11.Python中变量:
在Python中,等号=是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量,这种变量本身类型不固定的语言称之为动态语言,与之对应的是静态语言。静态语言在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错。
12.Python中字符串
字符串可以用’'或者”“括起来表示。\n 表示换行 \t 表示一个制表符 \ 表示 \ 字符本身
例:“I’m OK”;‘Learn “Python” in imooc’;‘Bob said “I’m OK”.’(前面插入\表示其只为一个普通字符)
多行字符串:‘Line 1\nLine 2\nLine 3’
例:请把下面的字符串用r’’’…’’‘的形式改写,并用print打印出来:
‘“To be, or not to be”: that is the question.\nWhether it’s nobler in the mind to suffer.’
解:print (r’’’“To be,or not to be”:that is the question.
Whether it’s nobler in the mind to suffer.’’’)
13.Python中Unicode字符串:
计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),0 - 255被用来表示大小写英文字母、数字和一些符号,这个编码表被称为ASCII编码,比如大写字母 A 的编码是65,小写字母 z 的编码是122。如果要表示中文,显然一个字节是不够的,至少需要两个字节,而且还不能和ASCII编码冲突,所以,中国制定了GB2312编码,用来把中文编进去。
转义:u’中文\n日文\n韩文’
多行:u’’‘第一行
第二行’’’
raw+多行:ur’’'Python的Unicode字符串支持"中文”,
“日文”,
"韩文"等多种语言’’’
如果中文字符串在Python环境下遇到 UnicodeDecodeError,这是因为.py文件保存的格式有问题。可以在第一行添加注释 : # -- coding: utf-8 --
print (‘静夜思’’\n’‘床前明月光,’’\n’‘疑是地上霜。’’\n’‘举头望明月,’’\n’‘低头思故乡。’)
14.Python中整数和浮点数:
Python支持对整数和浮点数直接进行四则混合运算,运算规则和数学上的四则运算规则完全一致。和数学运算不同的地方是,Python的整数运算结果仍然是整数,浮点数运算结果仍然是浮点数:但是整数和浮点数混合运算的结果就变成浮点数了:
1 + 2 # ==> 整数 3 1.0 + 2.0 # ==> 浮点数 3.0 1 + 2.0 # ==> 浮点数 3.0
11 / 4 # ==> 2 11 % 4 # ==> 3 11.0 / 4 # ==> 2.75
15.Python中布尔类型:
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’

  1. 在计算 a and b 时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。
  2. 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。
    例:a = ‘python’
    print(‘hello,’, a or ‘world’) #输出为:hello,ptyhon 因为a 为真,就直接输出
    b = ‘’
    print(‘hello,’, b or ‘world’) #输出为:hello,world 因为b为假,就输出后面的值,即:world
    16.Python创建list(列表):
    Python内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素。
    L = [‘Michael’,‘Bob’,‘Tracy’]
    L 输出为:[‘Michael’, ‘Bob’, ‘Tracy’]
    L = ['Adam ',95.5, 'Lisa ',85, 'Bart ',59]
    print L
    L = [‘95.5’, ‘85’, ‘59’]
    print(L[1]) #打印出正数第二个元素
    print(L[-1]) #打印出倒数第一个
    L = [‘Adam’, ‘Lisa’, ‘Bart’]
    L.insert(0, ‘Angel’) #添加新元素
    L.pop(2) #删除第二个元素
    print(L)
    list.append(3) #向后面添加元素,参数可以是任何东西,作为元素添加到列表尾部
    list.extend([5,6,7]) #使用一个序列扩展另一个序列,序列中的元素逐项添加到列表尾部
    17.Python创建tuple(元组):
    tuple是另一种有序的列表,中文翻译为“ 元组 ”。tuple 和 list 非常类似,但是,tuple一旦创建完毕,就不能修改了。
    t = (‘Adam’, ‘Lisa’, ‘Bart’, ‘Angel’)
    t1 = (0, 1, 2, 3, 4, 5, 6, 7, 8) #输出:(0,1,2,3,4,5,6,7,8)
    t2 = (1,) #输出:(1,)
    t2 = (‘Adam’,) #输出:(‘Adam’,)
    print(t2)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值