首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python从零开始系列连载(二)

本文转自‘灯塔大数据’:

上一期学的upyter相信大家都已经会用了,我们这一期就可以愉快地学习写代码啦!

Python的基本数据类型

数据类型在数据结构中的定义是一个值的集合以及定义在这个值集上的一组操作。

变量是用来存储值的所在处;它们有名字和数据类型。

这里说的变量又是啥???

如果你学过编程语言,例如大学理工科学的C和其他专业学的VB,很好理解。

如果你从来没学过编程语言,那我就通俗解释一下:

在家里吃饭,用盘子盛放美味可口菜肴,盘子(盛放菜)就是变量,而盘子的名字(青花瓷盘子)则是变量名,而这里用盘子(盛放菜),而不是碗(盛放菜),因为盘子和碗不是一类东西。盘子和碗就是两种数据类型,他们都能保存数据(这里的数据指的是菜)。

Python的数字也有4中数据类型(就好比盘子也有四种,大盘子,中等盘子,小盘子,迷你盘子)分别是:整数(int)、浮点数(float)、布尔值(bool)、复数(complex)。

接下来,我们看一下他们有啥不同:

type()函数

type:类型的意思

我们发现测量出的233是整数类型(int)

233.0是浮点数类型(float)、

'233'(注意有单引号)是字符串类型(str)

我们继续掏出一个函数:isinstance()

这个函数传入两个参数(也就是括号内的内容,参数之间用逗号分隔)

第一位参数:数据

第二位参数:判断该数据是否是某个类型

例如:

判断233是不是浮点数?返回False,意思是233不是浮点数

Python的基本数据类型——数字

1.整数

整数就是没有小数点嘛!

Python的整数长度限制我也不清楚,反正可以写超多位,不像其他很多编程语言有int smallint longint啥的,我们试试:

上面的6***666意思是:6的666次方,好了,这么长的数据大小肯定够你用了吧

Python整数花头(花样)挺多的,有十进制,二进制,十六进制,八进制

他们之间的相互转化可以参考:http://www.cnblogs.com/xugang/archive/2008/08/02/1258610.html

十进制写法就是正常写法;

二进制写法加前缀0b,且只能出现0 1两种数字的组合,例如:0b1001110;

十六进制写法加前缀0x,出现0~9和A~F的数字和字母组合,例如0xA20974BCF。

运行时,他们会自动转为十进制输出结果,我们试试

2.浮点数

简单点数就是带小数点的数字

划重点:浮点数只能以十进制方式书写,也就是不加前缀

运行之后弹出了红绿黄相间的错误,我们谷歌翻译一下,意思是语法错误,说明不能在二进制写法中加小数点。

当然,除了这个错误,你还可能犯另一个错误:

这个错误就是之前讲过的int整数可以6**666,我们给6加个小数点变成浮点数,其他不变,运行一下

显示溢出错误:结果太大了,不能承受!

这个错误大家要注意!

浮点数其实还包括分数

因为是无限循环的,所以显示和保存是有误差的

3.布尔值

布尔值就是我们常说的逻辑,可以理解为对或者错,正面与反面,我们看一下实例:

233(int)竟然等于233.0(float)

这刷新了我的三观,不是说好了他们数据类型不一样么!

注意了,这里只是比较两个值是否相等,233和233.0可以认为相等,只是精度保留不一样

那'233'和233为啥不相等呢?

因为'233'是字符串,不能数值运算,而233是数字

4.复数

复数是啥?当年初中,我们以为有理数可以表示万物,突然杀出个不讲道理的无理数。而有理数和无理数统称实数,在实数之外还有一种叫复数

在派森中,复数是这样表示的:

type返回的是complex(复杂的),意思就是复数,复数确实复杂,多了个j的部分,但是你不能这样写:

学过复数都知道复数的实部和虚部

通过将他们括起来再使用real(真是的)和imag(虚假的)方法即可获得。

Python的基本数据类型——字符串

1.字符串的组成

划重点:''表示空字符串(空字符串就是字符串里没有内容)

字符串之所以区别于其他数据类型,是因为它是被包含在引号里面的,你可以用单引号,也可以用双引号

划重点:但是不能一边单引号,一边双引号!

我们看一下:

第三个:两边不一致所以出错了

当然,有时候我们必须单引号和双引号都得使用:

例如我相把她说的话和所有内容都用单引号嵌套,发现报错了

大家可以看到实际被单引号引用的是红色的内容,中间有一段是黑色的没被包括进去,这是因为,派森会从左到右自动扫描到一对单引号就把它俩匹配一起。

为了解决这个问题,我们同时使用单引号和双引号

这样就可以啦~

其实连续三个单引号或者双引号也可以,不过一般我们不用

说到三个引号,我们要说一下注释了

2.注释

注释,是对书籍或文章的语汇、内容、背景、引文作介绍、评议的文字。说得通俗一点就是多写点内容帮助理解

Python中的注释分为单行注释和多行注释:

单行注释

在每行代码前写一个井号,则这行代码不会被运行

运行之后发现报错,看一下报错信息,意思是a这个变量没被定义(因为你a=1定义的这行前面有个井号,是被注释了,程序不会执行)

其实大家发现没,之前上课讲到的Markdown和这里的注释好像功能相似

没错!就是这样!

如果我连续很多行都要注释呢?那就每行前面加一个#不就行啦。

好了,我们讲一下多行注释怎么弄

还记得刚才我们嫌弃的三个引号么

它就可以多行注释

a的内容确实被注释掉了,所以打印a的内容会报错

当然,除了三个单引号,三个双引号也是ok的

一直看报错的不太舒服,虽然我们是将用法

来看个正常运行的(没有注释):

3.转义

转义转义,顾名思义,就是转换含义

通俗的说就是意思变了

Python用反斜杠(\)来转义字符

我们举几个例子理解一下:

这里的\t 是横向制表符,也就是空出四个空格的长度,而 \n 则是换行符

这里的\b是退格,也就是我们键盘上常用的Backspace

I 被退格键删除了

退格键只会删除前面一个字符,而不是所有字符

We中只删除了e

还记得我们上节课说的单引号双引号同时使用的例子么

加了转义符,就可以只使用一种引号啦 ♪(^∇^*)

有时,我可能想打印 \t

虽然一般不会

这时候我怎么样让这个转义不生效呢

可以采用两种措施:

1.字符串前面加r

2.再加一个反斜线

4.常用字符串相关操作方法

(1)字符串长度

用len()函数,可以查看字符串的长度

划重点:字符串中的空格也是占长度的,空串:""/'' 长度是零

中文,字母,数字,符号都是占一个长度

包含转义字符的字符串长度是把每个转义字符当成一个字符,即 \t 是一个字符长度,而不是看上去的两个

(2)字符串连接

可以通过加号连接字符串

直接连接显示很不友好,我们加一下空格

这样就好多啦~

(3)字符串索引

Python有两种索引方式:

从前往后的正向索引:有m个字符长度的字符串,索引值是0~m-1(计算机很多都是从0开始标序号的)

从后往前的负数索引:有m个字符长度的字符串,索引值是-1~-m

如果我们下标索引越界了(超过了以上规定的范围),则会报错:

(4)字符串切片

切片:顾名思义,把东西切成片,如果把字符串看成一根黄瓜,切出一部分下来是不是就是切片呢

说的专业一点就是,取出字符串中的子串!

切片最标准的写法是用两个冒号分割三个数字

第一个数字表示切片的开始位置(索引)

第二个数字表示切片的截至位置,但是不包括这个位置,也就是切到它的前一个位置结束(索引)

第三个表示切片的步长(切片的厚度),当省略步长时候,默认为1,可以省略后一个冒号

举个例子:

当然,如果越界了,不会报错哦~

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180926G1XTWH00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券