欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

简单谈谈python基本数据类型

程序员文章站 2023-11-02 14:20:52
int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647 在64位系统上,整数的位数为...

int(整型)

在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647

在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807

long(长整型)

跟c语言不同,python的长整数没有指定位宽,即:python没有限制长整数数值的大小,但实际上由于机器内存有限,我们使用的长整数数值不可能无限大。

注意,自从python2.2起,如果整数发生溢出,python会自动将整数数据转换为长整数,所以如今在长整数数据后面不加字母l也不会导致严重后果了。

注意:在python3里不再有long类型了,全都是int

>>> a= 2**64
>>> type(a)  #type()是查看数据类型的方法
<type 'long'>
>>> b = 2**60
>>> type(b)
<type 'int'>

在python中,加了引号的字符都被认为是字符串!

>>> name = "alex li" #双引号
>>> age = "22"       #只要加引号就是字符串
>>> age2 = 22          #int
>>>
>>> msg = '''my name is alex, i am 22 years old!'''  #我擦,3个引号也可以
>>>
>>> hometown = 'shandong'   #单引号也可以

那单引号、双引号、多引号有什么区别呢? 让我大声告诉你,单双引号木有任何区别,只有下面这种情况 你需要考虑单双的配合

msg = "my name is alex , i'm 22 years old!"

多引号什么作用呢?作用就是多行字符串必须用多引号

msg = '''
今天我想写首小诗,
歌颂我的同桌,
你看他那乌黑的短发,
好像一只炸毛鸡。
'''
print(msg)

字符串拼接

数字可以进行加减乘除等运算,字符串呢?让我大声告诉你,也能?what ?是的,但只能进行"相加"和"相乘"运算。

>>> name
'alex li'
>>> age
'22'
>>>
>>> name + age  #相加其实就是简单拼接
'alex li22'
>>>
>>> name * 10 #相乘其实就是复制自己多少次,再拼接在一起
'alex lialex lialex lialex lialex lialex lialex lialex lialex lialex li'

注意,字符串的拼接只能是双方都是字符串,不能跟数字或其它类型拼接

>>> type(name),type(age2)
(<type 'str'>, <type 'int'>)
>>>
>>> name
'alex li'
>>> age2
22
>>> name + age2
traceback (most recent call last):
  file "<stdin>", line 1, in <module>
typeerror: cannot concatenate 'str' and 'int' objects #错误提示数字 和 字符 不能拼接

布尔类型很简单,就两个值 ,一个true(真),一个false(假), 主要用记逻辑判断

但其实你们并不明白对么? let me explain, 我现在有2个值 , a=3, b=5 , 我说a>b你说成立么? 我们当然知道不成立,但问题是计算机怎么去描述这成不成立呢?或者说a< b是成立,计算机怎么描述这是成立呢?

没错,答案就是,用布尔类型

>>> a=3
>>> b=5
>>>
>>> a > b #不成立就是false,即假
false
>>>
>>> a < b #成立就是true, 即真
true