《老鸟python 系列》视频上线了,全网稀缺资源,涵盖python人工智能教程,爬虫教程,web教程,数据分析教程以及界面库和服务器教程,以及各个方向的主流实用项目,手把手带你从零开始进阶高手之路!点击 链接 查看详情




基本数据类型

阅读:227570706    分享到

编程就是利用计算机程序模拟现实世界,既然是模拟现实世界,首先第一个问题就是用计算机程序定义什么样的数据类型来对等现实世界的类型。比如我们现实世界中有数字、真假、文本、图形、音频、视频等各种各样的数据,我们在计算机中写程序就需要定义相应的数据类型来存储这些类型。

我们 Python 中既有基本数据类型又有高级数据类型,基本类型就如朴素唯物主义中的金木水火土,高级数据类型就如金木水火土组成的更复杂的物质。高级数据类型都是由基本数据类型组成,本节课我们先学习基本的数据类型。

整数类型(int)

Python 可以处理任意大小的整数,当然包括 0 和负整数,在程序中的表示方法和数学上的写法是一样的。比如:10,0,-10 等。

a = 10
b = 0
c = -10

print(a)
print(b)
print(c)

Python 语言的整数类型不但支持数学上的所有运算(比如加减乘除开方等等),还支持和字符串相乘以及其它操作等等。

count = 3
language = "python"
print(count * language)

浮点数类型(float)

数学上的小数在程序中叫浮点数,浮点数当然可以包括正小数和 0(0 的写法要以小数的形式写)和负小数。比如:10.1,0.0,-10.1 等。

a = 10.1
b = 0.0
c = -10.0

print(a)
print(b)
print(c)

整数和浮点数在程序中做运算的方式是不同的,整数之间的四则运算结果是整数;浮点数和浮点数或和浮点数和整数之间的运算结果是浮点数,但有可能会出现四舍五入的现象。

aint = 2
bint = 3
afloat = 2.0
bfloat = 3.0

print(aint + bint)
print(afloat + bfloat)
print(aint + afloat)

在 Python 中我们把整数类型和浮点数类型统称为数字类型,其它语言中并没有这种统称,大家用 Python 要习惯这种叫法。

字符串类型(str)

字符串是以英文字符单引号或英文字符双引号或英文字符三个单引号括起来的任意字符,比如 '123',"abc",'''老鸟Python''', 在此我们用三个单引号作为程序作者的说明放在开头。

author = '''老鸟Python'''
strone = '123'
strtwo = "abc"

print(strone)
print(strtwo)

如果字符串内部既包含单引号又包含双引号,那应该如何在程序中写字符串呢,我们可以用转义字符 \ 来标识, 比如定义一个字符串 I'm studying "python", 在程序中我们可以写成 "I\'m studying \"python\""

strone = "I\'m studying \"python\""
print(strone)

Python 还允许用在字符串前面加上 r 表示引号内的字符串默认不转义。

strone = r"I\'m studying \"python\""
print(strone)

如果我们程序中字符串的长度很多需要换行,我们对使用单引号,双引号或三个单引号的字符串都可以使用 \ 来连接我们在程序中写的换行字符串(打印出来不包含换行)或者用三个单引号来写多行字符串(会保留换行)。 大家运行以下程序看看结果有什么区别。

strone = "what are u doing baby\
balabalabala\
ahaahaahaahaaha"
print(strone)

strtwo = '''what are u doing baby
balabalabala
ahaahaahaahaaha'''
print(strtwo)

大家经过上面两个例子,应该能理会到,我们一般习惯于用三个单引号作为程序的注释性说明或者多行字符串。

布尔类型(bool)

我们现实世界中存在非真既假的事物,在此我们用布尔类型表示,布尔类型只有两种值,要么是 True,要么是 False。

ruhuaisgirl = True
ruhuaisbeauty = False
print(ruhuaisgirl)
print(ruhuaisbeauty)

数据可以通过比较运算符 ==,!=,>,<, 来进行运算,结果是布尔值。

print(3 == 2)
print(3 != 2)
print(3 > 2)
print(3 < 2)

我们把 and、or 或 not 叫做布尔运算,只有布尔类型的值进行布尔运算结果才是布尔值。其它类型数据进行布尔运算,我们在运算符章节讲解。

print(True and False)
print(True or False)
print(not True)

空值类型(NoneType)

空值类型只有一个值用 None 表示。None 值和 0,False,空字符串等等不是一个值, 因为他们的数据类型都不一样,比如 0 是个整数类型,False 是布尔类型,空字符串是字符串类型,而 None 是 NoneType 类型。

print(None == 0)
print(None == False)
print(None == "")

其它语言中没有空值类型的概念,一般用 False 表示,NoneType 是我们 Python 语言独有的数据类型。

本节重要知识点

掌握各种数据类型,掌握某些数据类型运算,比如浮点型和整型运算。

深入理解布尔值和布尔运算。

理解空值 None 的意义。

作业

某著名公司笔试题:python 的 int 类型变量最大能接收多大数字,为什么?


如果以上内容对您有帮助,请老板用微信扫一下赞赏码,赞赏后加微信号 birdpython 领取免费视频。


登录后评论

user_image
酩酊醉前尘
2020年8月6日 08:45 回复

... python suppermen = ["如花", "星", "赵日天"]

for item in suppermen: if item == "星星": print(item) break elif all(item) != "星星": print("无此人") ...


user_image
韩默
2020年1月30日 17:00 回复

大神就是大神!博主,顶你! 关于注释:看过其他一些文章和Blog,以及包括大学教程,都将三引号包括内容讲做是多行注释。唯博主你深入本质,娓娓道来,直达要义。吾辈深拜以膜之~~


user_image
Zoffy
2019年4月18日 22:33 回复

求解,print()中\n后直接加上变量名为什么会出错呢?

例如以下错误

print(n,\nf,\ns1,\ns2,\ns3,\ns4)

多谢!!


user_image
高杨
2018年12月26日 10:14 回复

静下心来学习,哈哈


user_image
doodlewind
2018年8月20日 15:57 回复

坚持下去,加油!


user_image
王二小
2018年7月13日 00:10 回复

说人话的教程, 囧, 有表情包没有?


user_image
Dirax
2018年6月4日 16:56 回复

Python还允许用r''表示''内部的字符串默认不转义