分享

python基础之数据类型介绍...

 昵称16619343 2017-05-29

引入

任何一门语言比如C++,Java,Perl,Python语法上的招式主要包含变量类型,数据结构,循环控制,函数,文件,异常处理,进程/线程等。大体就这几个方面,万丈高楼平地起,我们先从最简单的变量和数据入手。

首先要说明的是python的是动态语言,不像java是强制类型语言,是静态语言也就是说你在定义变量的时候就要指定类型,而python是动态的语言,是边执行变编译,在定义变量的时候不需要指定数据类型,在赋值的时候系统会自动为其指定类型,分配内存,这样就很灵活。

先罗列一下Python提供的基本数据类型:数值(整型、浮点型、复数、布尔型等)、字符串、列表、元组、字典、集合等,将它们简单分类如下:

  • 数值numbers

Python Number 数据类型用于存储数值,分为整数int和浮点数float。

整数:比如1,200,-1000,0,也有用十六进制表示的比如0xff00等

浮点数:比如1.11,12,13,-10.02,也有比较大的浮点数比如2.12x10^9

还有其他格式及常见操作符如下:

  • 字符串String

python的字符串以''(单引号)或者''(双引号)或者''''''(三引号)括起来的随意文本都是字符串

'abc','hello world','''This is my first code'''

有一点要注意若字符串里面包含特殊的字符,可以用转义\进行转义

word='Xiao Ming said \'I\'am full\'.'

print(word)

>>Xiao Ming said 'I'am full'.

另外三引号一般用在类或者函数的开头用来做大段的注释用

说到字符串一点要提一下python的字符串format格式:一般有两种

1)%操作符

name='xiao ming'

age=20

print('Your name is %s,age is %d'%(name,age))

2).format

name='xiao ming'

age=20

print('Your name is {0},age is {1}'.format(name,age))

.format的用法比较灵活,参数的顺序和格式化的顺序不必完全相同,一般推荐用format,而且也是Python3里面的官方力推,之所以保留%主要是为了兼容以前的代码

name='xiao ming'

age=20

print('age is {1},your name is {0},'.format(name,age))

再来看看字符串的一些常见操作

  • 布尔值bool

Python中的布置值,只有True和False两种(一定要注意大小写),布尔值的运算可以用and,or 和not

A and B ,表示A和B都为True,最后的运算结果才是True.

A or B , 表示A或者B其中一个True,最后的结果就是True.

not,是非运算,它是一个单目的运算,就是把True变False,把False变True.

if语句通过判断布尔类型来控制程序的执行路径,同时在 Python 中数据有隐式的真假值,可以使代码变得简短有效,如下

  • 空值

Python的空值是用None表示,None不是0,也不是空字符串,也不是False,它是一个特殊的空值,我们可以用python的内置函数type来看一下,然后分别0,空字符,False比较一下,看看它到底是何物

>>> type(None)

>>> None == 0

False

>>> None == ''

False

>>> None == None

True

>>> None == False

False

  • 列表(List)

Python 可使用语法糖表示列表,其中的元素可以是任何类型,以顺序存储的方式动态储存数据:

  • 元组(Tuple)

元组与列表不同的是,元组是不可变类型(immutable),不能对元素进行修改,但内存可以明确知道需要分配多少空间给元组。

  • 字典(Dictionaries)

字典是通过键值对的方式进行存储,占用大量的内存而获得极快的查找和插入速度,而列表刚好相反,查找和插入速度随着元素的增加而变慢,但占用的内存较小。字典虽然是可变类型,但因为它的 value 的位置是根据 key 计算出来的,因此 key 必须是不可变对象,这样才能确保字典的正确使用。

  • 集合(Set)

集合与list类似,但集合中不允许有重复的元素,普通集合是可变的,Frozenset是不可变的,我们可以利用集合的特性消除重复元素或做并、交、差等数学操作

  • 自定义数据类型

Python 允许通过继承去自定义数据类型,很多第三方库或框架都有类似的应用,这里简单实现了一个供参考:

题外话

今天在我们的直播课中也会讲到python的内容,想要学习的小伙伴抓紧入群了,在群里可以和大家一起交流一起进步,还有各种学习资源和免费公开课直播通知。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多