Python笔记(1)-数据类型

python支持的数据类型

变量

定义:变量是计算机内存中的一块区域,变量可以存储规定范围内的值,而且值可以改变

命名规则:由字母、数字、下划线组成,并且不能由纯数字组成或以数字开头

python中地址变量与c语言刚好相反,一条数据可以包含多个标签:

In [1]: a=1

In [2]: b=1

In [3]: id(a)    #查看变量a在内存中的地址
Out[3]: 8872280

In [4]: id(b)    #查看变量b在内存中的地址
Out[4]: 8872280

常量

所谓常量就是不能变的变量,比如常用的数学常数π就是一个常量。在Python中,通常用全部大写的变量名表示常量:
PI = 3.14159265359
但事实上 PI 仍然是一个变量,Python根本没有任何机制保证PI 不会被改变,所以,用全部大写的变量名表示常量只是一个习惯上的用法,如果你一定要改变变量PI的值,也没人能拦住你。

整形

整形的表示范围-2147483648到2147483647,超过这个范围就会变为长整形

type()可以查看数据类型

In [5]: num1=123

In [6]: type(num1)
Out[6]: int

长整形

In [9]: num2=999999999999999999999999999

In [10]: type(num2)
Out[10]: long

强制定义为长整形的方法:

In [11]: num3=99L

In [12]: type(num3)
Out[12]: long

浮点型

In [14]: f1=11.0

In [15]: type(f1)
Out[15]: float

浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的

1.2e10代表的数值为1.2的10次方

In [16]: f2=1.2e10

In [17]: type(f2)
Out[17]: float

12e10代表的数值为12的10次方

In [18]: f3=12e10

In [19]: type(f3)
Out[19]: float

整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差

字符串

字符串是以''或""括起来的任意文本,比如 'abc' , "xyz" 等等。请注意,''或""本身只是一种表示方式,不是字符串的一部分,因此,字符串 'abc' 只有 a , b , c 这3个字符。如果 ' 本身也是一个字符,那就可以用""括起来,比如 "I'm OK" 包含的字符是 I , ' , m ,空格, O , K 这6个字符。
如果字符串内部既包含 ' 又包含 " 怎么办?可以用转义字符 \ 来标识,比如:

'I\'m \"OK\"!'

表示的字符串内容是:

I'm "OK"!

转义字符 \ 可以转义很多字符,比如 \n 表示换行, \t 表示制表符,字符 \ 本身也要转义,所以 \\ 表示的字符就是 \ ,可以在Python的交互式命令行用print打印字符串看看:

In [33]: print 'I\'m ok.'
I'm ok.

In [34]: print 'I\'m learning\nPython.'
I'm learning
Python.

In [35]: print '\\\n\\'
\
\

如果字符串里面有很多字符都需要转义,就需要加很多 \ ,为了简化,Python还允许用 r'' 表示 '' 内部的字符串默认不转义,可以自己试试:

In [36]: print '\\\t\\'
\    \

In [37]: print r'\\\t\\'
\\\t\\

如果字符串内部有很多换行,用 \n 写在一行里不好阅读,为了简化,Python允许用 '''...''' 的格式表示多行内容,可以自己试试:

In [38]: print '''line1
   ....: line2
   ....: line3'''
line1
line2
line3

上面是在交互式命令行内输入,如果写成程序,就是:

print '''line1
line2
line3'''

多行字符串 '''...''' 还可以在前面加上 r 使用,请自行测试。

波尔类型

只包含True|False两种,注意开头字母大写,不识别小写

In [20]: a=True

In [21]: type(a)
Out[21]: bool

In [22]: b=False

In [23]: type(b)
Out[23]: bool

如果括号里面有数值,返回True,否则False,0也返回False

In [24]: a=123

In [25]: bool(a)
Out[25]: True

In [26]: b=""

In [27]: bool(b)
Out[27]: False

In [28]: bool(0)
Out[28]: False

In [29]: bool(-1)
Out[29]: True

In [30]: bool(1)
Out[30]: True

复数类型

python对复数提供内嵌支持,例如3.14j,8.32e-36j

In [31]: a=8.32e-36j

In [32]: type(a)
Out[32]: complex

空值

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

此外,python还提供了列表、字典等多种数据类型,还允许创建自定义数据类型。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值