excel统计同类型数据python_从Excel的数据类型说Python

写在前面

这节内容是python基础知识中的数据类型和运算符,可以回顾一下前两篇文章来复习一下:利用Excel学习Python:变量

本来想分开写的,但发现好像分不开,所幸内容也不多,废话不多说,直接正文怼上来。Excel中有3种基本的数据类型:数值型、字符型和逻辑型,在python中也不例外,我们可以一一对应来看。

1.数值型

先来想一下Excel中的数值类型的数据是什么样的,数字、百分数、分数、小数、货币、科学计数、日期和时间这些单元格格式都是数值型的数据,只是展示的形式不一样,并且他们都有一个共同的特点,在单元格的显示中靠右对齐,这里划重点,因为字符型数据是靠左对齐的,用来加以区分。

在python中,数值型用于存储数字变量,比如整数和小数。

整型

数值为整数的变量类型(int),用于存储整数变量,如10,可以用Type()函数查看具体的数值类型,如type(20) 输出int,就可以知道20是整型。

In [1]: # 整型

type(20)

Out[1]:int

浮点型

数值为小数的变量类型(float),如3.5,输出float,说明5.5是一个浮点型数据。

In [2]: # 浮点型

type(5.5)

Out[2]:float

数值型数据的计算

整数和浮点数都可以进行算术运算和比较运算,在说运算前,要先来认识运算符。

 算术运算符

下面的表详细描述了该运算符的符号、用法、结果,以及在python和Excel中各自的输入形式。

In [3]:# 算术运算符

x = 5

y = 10

print("加:x+y=",x+y)

print("减:x-y=",x-y)

print("乘:x*y=",x*y)

print("除:x/y=",x/y)

print("取余:x%y=",x%y)

print("取整:x//y=",x//y)

print("x的y次幂:x**y=",x**y)

Out[3]:加:x+y= 15

减:x-y= -5

乘:x*y= 50

除:x/y= 0.5

取余:x%y= 5

取整:x//y= 0

x的y次幂:x**y= 9765625

对比Excel:和Excel对比起来其实都差不多,需要注意一点的是取余相当于Excel里的mod函数,取整可以用Excel里的int函数。

|| 这里还要说一个小坑,可乐以前电脑上装的是python2.7,在做除法(/)计算的时候,得到的结果只能取整,得不到后面小数的部分,现在都是python3.X的版本没有这种问题,但假如你和可乐一样恰好是以前装的2.7版本,要怎么解决这个问题呢?答案也很简单,做一个类型转换,将除数或者被除数转换成浮点型即可,所以说,还是用最新版本的吧,没毛病。

# python 2.7

In [4]:2/5

Out[4]:0

---------------------

# 解决方法

In [5]:float(2)/5

Out[5]:0.25

比较运算符

比较运算符又叫关系运算符,用来进行大于、小于、等于等比较的,表中的结果一列TRUE/FALSE是逻辑值,是本文后面将要介绍的第三种数据类型。

In[6]: # 关系运算符

x = 5

y = 10

print("大于:x>y = ",x>y)

print("小于:x

print("等于:x==y = ",x==y)

print("大于等于:x>=y = ",x>=y)

print("小于等于:x<=y = ",x<=y)

print("不等于:x!=y = ",x!=y)

Out[6]:大于:x>y = False

小于:x

等于:x==y = False

大于等于:x>=y = False

小于等于:x<=y = True

不等于:x!=y = True

对比Excel:不等于在python中是!=表示,在excel中是<>表示。

2.字符型

字符型的数据在Excel中就是文本格式的数据,不能进行加减乘除这样的四则运算,前面说过它是靠左对齐。

Python中字符类型的变量用于存储字符串,也就是一系列字符,python中用单引号、双引号或三引号括起来的内容表示字符串。

In [7]:# 字符串

type("student")

Out[7]:str

字符串的运算

字符串虽然不能进行加减乘除这样的四则运算,但可以做其他的一系列的运算,如:

 连接

+ 号可以将两个或多个字符串连接起来

In [8]:# 字符串连接

"data"+"cola"

Out[8]:'datacola'

复制

*号可以将字符串复制,* 后的数字表示复制多少次

In [9]:# 字符串复制

"data_cola"*2

Out[9]:'data_coladata_cola'

 删除

删除指的是删除字符串中的字符,用到strip()函数,可以删除指定字符

In [10]:# 字符串删除

"Ddata_cola".strip("D") #删除D字符

Out[10]:'data_cola'

也可以删除末尾的空格:

In [11]:# 删除空格

"data_cola ".strip()

Out[11]:'data_cola'

 查找

一个字符串是否包含另一个字符串,可以用in运算符,返回的结果是逻辑值True/False

In [12]:# 字符串查找

"a" in "data_cola"

Out[12]:True

除了in,还可以用find()函数来查找,与in不同的是,查找的结果是字符在字符串中的位置,如下第一个出现的a在data_cola中是第二个位置,因此输出1,这个后面马上写到。

In [13]:# 字符串查找

"data_cola".find("a")

Out[13]:1

 字符串索引

通过对字符串中字符所处位置的选取,得到该值。Python中的索引是从0开始递增,这是正向索引,还有反向索引,是从字符串的最后一位为-1开始递减。已知字符的位置,想要得到该字符的值,用[]括起来,如下对python字符赋值给a,取该字符第一个位置的值,用a[0]表示。

In [14]:# 字符串索引:获取第一个字符的值

a = "python"

a[0]

Out[14]:'p'

In [15]:# 字符串索引:获取最后一个字符的值

a[-1]

Out[15]:n

【切片】是python中常用的操作,对字符串切片用来获取字符串的一部分字符,下面的[0:2]指的是获取第1到3位的值,不包括第三位

In [16]:# 获取1-3位的值,不包括第三位(左闭右开)

a[0:2]

Out[16]:'py'

[:4],指取第一位到第5位之间的值,不包括第五位

In [17]:a[:4]

Out[17]:'pyth'

[3:],指取第4位开始到最后的值

In [18]:a[3:]

Out[18]:'hon'

 可选地,还有大小写转换

首字母大写title()函数

In [19]:# 首字母大写

"data_cola".title(

Out[19]:'Data_cola'

所有字母大写,upper()函数

In [20]:# 所有字母大写

"data_cola".upper()

Out[20]:'DATA_COLA'

所有字母小写,lower()函数

In [21]:# 所有字母小写

"DATA_COLA".lower()

Out[21]:'data_cola'

3.逻辑型

逻辑型数据实际上就是TRUE / FALSE这两种值,在Excel中E1单元格输入公式“=3>5”,会显示FALSE,这很容易理解,因为3>5在逻辑上是假的。

在Excel里直接这样用很少,通常是和if函数结合起来进行逻辑判断,再对结果进行展示。

Python中,也是这样显示的。

IN [22]:1>2

Out[22]:False

逻辑值的运算

逻辑值可以用逻辑运算符进行运算。

In [23]:# 逻辑运算符

x = 5

y = 10

print("and: x and y:",x and y)

print("or: x or y:",x or y)

print("not: not x:",not x)

Out[23]:and: x and y: 10

or: x or y: 5

not: not x: False

4.类型转换

这里主要是数字和字符串之间的转化

Int(a),把变量a转化成整型

In [24]:# 浮点型转整型

int(3.3)

Out[24]:3

Str(b),把变量b转换成字符型

In [25]:# 整型转字符型

type(str(13555556555))

Out[25]:str

以上是3种基本的运算符,专讲python的教程里还会有位运算符、赋值运算符、成员运算符等,我们这个笔记里就不说了先,后续用到再补充。

@文章属原创,转载请联系作者

@作者:可乐,数据分析从业者

@微信公众号:可乐的数据分析之路

@ 可乐的数据分析交流群也已建立,加作者微信(data_cola),备注进群,拉你入群交流探讨


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部