【Python数据分析基础-2】Python标量类型
0. 引入
既上篇文章介绍的二元操作符,这篇文章,我将介绍一下Python的标量!
1. Python标量类型表
2. 标量详解
1. None
$/qquad$None相当于特殊的常量,它表示的不是 0,而是没有值即空值,但是空值也不代表空对象。
None is 0 # 不是 0
结果为:False
None is "" # 不是空的字符串对象
结果为:False
None is {} # 不是空的字典对象
结果为:False
$/qquad$None的数据类型是NoneType 类型,需要注意的是:None只存在一个实例,即None 是 NoneType 数据类型的唯一值,也就是说,我们不能再创建其它 NoneType 类型的变量,但是可以将 None 赋值给任何变量。所以在上篇文章对"is"操作符进行讲解的时候,我们发现不管把None赋给哪个变量,这些变量都是同一个Python对象!你将None赋予给变量时,一直是将同一个Python对象赋予这些变量!
a = None
b = None
c = None
print(a is b)
print(a is c)
print(c is b)
True
True
True
2. 字符串类型str
可以用单引号 ‘ 或双引号 " 写一个字符串字面值:
a = 'TuDou'
b = "TongXue" # a、b均为字符串
对于含有换行的多行字符串,可以使用三个单引号 ”’ 或者 三个双引号 """,注意换行符也会被包含在内!
c = '''
Hello!
I'm TuDou
'''
d = """
Hello!
I'm TuDou
"""
可以用count的方法来计算多行字符串里的换行符,如下
print(c.count('/n'))
print(d.count('/n'))
3
4
python的字符串是不可变的,即字符串无法被修改,如下
a = 'TuDou'
a[2] # 先通过切片,看看字符串变量a的第三个字符是啥
'D' # 结果为字符'D'
然后尝试进行修改:
a[2] = 'B'
程序产生了报错,即字符串变量a不支持这种修改:
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-7-01b15c7a3ade> in <module>
----> 1 a[2] = 'B'
TypeError: 'str' object does not support item assignment
对于字符串,我会在后面的文章中进行更详细的讲解。
3. 字节与Unicode
$/qquad$对于字节和Unicode的关系以及其他编码的知识,UTF-8 到底是什么意思?unicode编码简介 这篇博客我觉得解释得十分详细了!
4. float与int
$/qquad$Python中基础的数字类型就是int和float,其中int可以储存任意大小的数字,而float表示的是浮点数,并且每个浮点数都是双精度64位数值。注意,Python中的整数除法会把结果自动转型为浮点数,如下:
5 / 2
2.5
Python中并没有单独的double类型的标量,只有类似于double类型的float型。
5. 布尔值bool
很简单的标量类型,只有True或者False两个值,可以和and、or等关键字合用!
6. 类型转换
str、bool、int、float既是数据类型,同时也是可以将其他数据转换为这些类型的函数!具体操作如下:
s = 1.23456
print(type(s))
print(int(s))
print(str(s))
print(bool(s))
print(bool(0))
结果为:
<class 'float'>
1
1.23456
True
False
下篇文章,我将详细介绍Python标准库中的datetime模块以及一些日期和时间信息处理的常用方法!
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/167556.html