python与数据思维基础笔记_Python小课笔记--Python基础:数据和函数(二)

29ad3ed452fc

截图来自Python小课

文|仟樱雪

在Python小课-1-2节中,已经学习了基础模块--数据--数据类型(整数、字符串),以及基础模块--变量,基础模块--函数(input函数、print函数)。

本节继续学习基础篇--数据与函数

29ad3ed452fc

截图来自Python小课

1、基础知识--数据篇--数据类型

数据:主要分为数据类型、变量、编码、类与对象;

函数:

计算机其实就是一个做数学运算的机器,所以计算机程序的主要任务就是处理各种数值、文本、音频、视频、图像等各种类型的数据;

本节主要内容如下

一、Python的几种简单数据类型:字符串、整数、浮点数;

二、相关的函数:str(),int(),float(),type(),len();

三、数据类型的转换

1、数据类型--字符串

(1)字符串:用单引号或者双引号括起来的任意文本。

例如:'樱雪';英文是string,计算机中一般简写为str,

字符串的呈现方式一般是用单引号或者双引号括起来的文本,比如 '樱雪':

print('樱雪')

print('樱雪')

print('樱雪')

print('樱雪')

结果显示

樱雪

樱雪

樱雪

樱雪

说明:

1、第一行被打印出来的字符串樱雪,和第二行被打印出来的字符串樱雪,没有任何的不一样。所以单引号和双引号的效果是一样的。

2、单引号和双引号只是一种表达方式,不是字符串的一部分。例如字符串 'ABC', 就是A 、B、C这三个字符而已。

(2)字符串的应用

应用一、包含单引号、双引号的字符串应用

如果字符串内部包含了单引号【''】和双引号【""】的处理:利用【转义字符\】来标识。

例如:如果打印:Let's go 这个字符串,根据已经学过的知识,我们会写:

a = 'Let's go'

print (a)

说明:

i、Python会报错: SyntaxError: invalid syntax,意思是“语法错误”,因为它只把前两个单引号中的Let当成了字符串

ii、Python是从左往右匹配单(双)引号的——当它读到一个引号时,会记住这是字符串,当它再读到下一个引号时,默认计算结束,所以在计算机眼里,上面的'Let'是字符串,后续的内容,它并不能读取,于是产生一个报错。

29ad3ed452fc

截图来自Python小课解决方案1:

需要使用转义字符【\】,把字符串中的单引号转义一下,此时【' Let's go '】就变成了【' Let's go '】

b = 'Let\'s go'#增加转义字符\

print (b)

运行结果:

29ad3ed452fc

截图来自Python小课

解决方案2:用双引号来标识字符串

c = "Let's go"

print (c)

说明:因为用了双引号作为标识符,而内部使用的是单引号,Python就能区分开来,正常运行了

可以反过来使用,比如说外部用单引号,然后内部的文本含有双引号,也可以的:

a = input('孔子曾说过哪句名言?')

print('子曰:"'+a+'。"')

说明:

在这行代码里,我们能看到最后打印的字符串由三部分组成。

第0部分是【子曰:"】,

第1部分是变量【a】,

第2部分是【。"】,

这三部分用加号【+】连接起来了。

在运行之后,然后输入一段孔子讲过的话,点击Enter继续。

说明:这段代码也是可以正常显示的,这是字符串中,单引号和双引号的交替使用

应用二、包含换行设置的字符串应用

换行转义字符的使用,转义字符【\n】,它的作用是换行,例如:

words = '今年的南方冷的透骨,人间不值得啊,我要回火星!'

这是一首只有三行的短诗,如果你要把每一句换行呈现的话。可以在每一句后面加【\n】:

words= '今年的南方冷的透骨,\n人间不值得啊,\n我要回火星!'

print(words)

运行结果如下:

29ad3ed452fc

截图来自Python小课

说明:诗句开始换行了

应用三、字符串结合type()函数、len()函数的使用

type函数:它主要用于获取数据的数据类型,例如:

a = '吴承恩'

b = type(a)

print(b)

第1行:定义了变量a,并为其赋值。

第2行:用type() 函数获取到了 a 的数据类型,并放在变量 b 里面。

第3行:为了显示在屏幕上,使用print() 函数让我们看到。

简洁做法:

a = '吴承恩'

print(type(a))

终端显示了,class代表类,而str代表字符串,所以这是一个字符串的类

29ad3ed452fc

截图来自Python小课

应用说明:当我们通过某种方法,获得了一个变量,里面放了数据,我们期望里面放的就是字符串类型的数据,这时,type() 函数就能确认了。

len()函数:它能帮我们获取到数据的长度。

a = '吴承恩'

b = len(a)

print(b)

第1行:定义了变量a,并为其赋值。

第2行:用len() 函数获取到了 a 的长度,并放在变量 b 里面。

第3行:为了显示在屏幕上,使用print() 函数让我们看到。

简洁做法:

a = '吴承恩'

print(len(a))

运行结果:终端显示了3,代表这个字符串的长度为3。

(3)字符串小结:

29ad3ed452fc

截图来自Python小课

2、数据类型--整数

(1)整数:英文是integer,简写为int,跟普通的数字没啥区别。

Python可以处理任意大小的整数,也包括负整数,在程序中的表示方法和数学上的写法一模一样:

+:加法

-:减法

*:乘法

/:除法

%:取模,返回除法的余数,5%2返回1

**:幂,返回x的y次幂,2**3等价于2的3次方

//:取整除,返回商的整数部分,11//2返回5

(2)整数和type()、len()函数的应用

type函数的应用,例如:

print(type(5))

print(type('5'))

返回结果:

说明:5 和 '5' 是不一样的,一个是整数,一个是字符串。

len函数的应用,例如:

print(len(5))

注意:去运行这行代码,会看到终端给我们报错

Traceback (most recent call last):

File "D:/Python_charm/hello.py", line 1, in

print(len(5))

TypeError: object of type 'int' has no len()

说明:

请看图中的报错部分,line1表示第一行代码出了错,然后其中最后一行写着:TypeError: object of type 'int' has no len() 。

意思是类型错误:整数这个类型没有len() 函数;可见,整数是不能使用len() 的。

3、数据类型--浮点数

(1)浮点数:很简单,就是带小数的数字。

之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的.

凡是带有小数点的数字,就都是浮点数。浮点数的英文是float,没有简写:

1.0

3.14159

-0.33

整数和浮点数,它们在计算机内部的存储方式是不一样的,整数运算永远是精确的,而浮点数运算则可能会有四舍五入的误差

(2)浮点数和type()、len()函数的应用

type函数,例如

print(type(1.0))

print(type(3.14159))

print(type(-0.33))

运行结果是:

len函数,例如

print(len(1.0))

print(len(3.14159))

print(len(-0.33))

运行结果是:

Traceback (most recent call last):

File "D:/Python_charm/hello.py", line 1, in

print(len(1.0))

TypeError: object of type 'float' has no len()

说明:出现报错,倒数第三行,写了问题出在 line1,所以第一行代码就执行不下去,最后一行,终端显示TypeError: object of type 'float' has no len()。意思是类型错误:浮点数这个类型没有长度。

翻译过来:计算机是在说:浮点数没有len()函数,所以,整数和浮点数都不能使用len() 函数。

4、数据类型的转换

(1)数据类型转换介绍

需要连接一个整数和字符串,再让print()函数打印出来的话,是不可以使用加号直接实现,需要转换数据类型,有3个函数可以实现这个功能,即str()、int()和float()函数。

str()函数:可以让其他数据类型转换成字符串;

int()函数:可以让其他数据类型转换成整数;

float()函数:可以让其他数据类型转换成浮点数;

例如

t = 3

print('我谈过'+t+'次恋爱。')

输出结果:

Traceback (most recent call last):

File "D:/Python_charm/hello.py", line 2, in

print('我谈过'+t+'次恋爱。')

TypeError: can only concatenate str (not "int") to str

说明 :

看倒数第三行,是line2有问题;再看最后一行写着TypeError: must be str, not int 意思是——类型错误:必须是字符串,而不是整数,也就是说,整数和字符串,用加号是拼接不起来的

例如:

a = input('随便输入一个数字')

b = 1

print(a+b)

输出结果:

随便输入一个数字54

Traceback (most recent call last):

File "D:/Python_charm/hello.py", line 3, in

print(a+b)

TypeError: can only concatenate str (not "int") to str

说明:在随便输入数据54后,报错了,问题出在line3,再看图片中的最后一行,还是同样的TypeError(类型错误),因为input() 函数接受的内容都是字符串的数据类型,虽然输入了一个数字,但放在变量a里面的,是字符串'3',整数和字符串无法相加,所以终端又会报错,这两段代码,终端都报错了。而它们俩的错误原因都是一样的——不同的数据类型,没办法拼接在一起。

(2)数据类型转换应用

str()函数应用:

t = 3

print('我谈过'+str(t)+'次恋爱。')

运行结果:

我谈过3次恋爱。

说明:

通过使用str()函数,t变为字符串,就可以连接字符串了

str()函数应用:

a = input('随便输入一个数字')

b = 1

print(int(a)+b)

运行结果:

随便输入一个数字54

55

说明:变量a的数据类型转换为整数,并成功打印出(a+b)

5、课后练习

练习1:请让这首诗实现换行的功能:

print('《红豆》王维 红豆生南国, 春来发几枝。 愿君多采撷, 此物最相思。')

操作:

print('《红豆》王维 \n红豆生南国,春来发几枝。\n愿君多采撷,此物最相思。')

运行结果:

《红豆》王维

红豆生南国,春来发几枝。

愿君多采撷,此物最相思。

练习2:请写出这样一个程序:请用户输入每天花在手机上的娱乐时间 a,再把时间 a 乘以7,再打印--“您一周花在手机上的娱乐时间总共是××小时“。

操作:

a=input('请问您每天花在手机上的娱乐时间是几小时呢?')

b=int(a)*7

print('您一周花在手机上的娱乐时间总共是'+str(b)+'小时')

运行结果:

请问您每天花在手机上的娱乐时间是几小时呢?1

您一周花在手机上的娱乐时间总共是7小时

小结:

1、不同数据类型的数据,不能用加号直接连接;

2、input函数默认将输入的数据存储为字符串;

3、整数和浮点数的存储方式不同,因此1和1.0是不同的数据类型,整数和浮点数都不能使用len() 函数;

(注:2018.10.12,Python编程,捡破烂儿的笨小孩学习小记,有用就给个小心心哟,后续持续更新ing)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值