excel 公式 单引号 concat_从Excel的数据类型说Python

转自:可乐的数据分析之路

写在前面

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

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

1.数值型

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

79937cfe34af84e6a9d22e709c1f3a0e.png

在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中各自的输入形式。

caf936f3148d5c729c5f3063cb90665d.png

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.7In [4]:2/5Out[4]:0---------------------# 解决方法In [5]:float(2)/5Out[5]:0.25

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

0b52baade0ae83099c699d4838a16ec5.png

In[6]: # 关系运算符      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)      Out[6]:大于:x>y =  False      小于:x<y =  True      等于:x==y =  False      大于等于:x>=y =  False      小于等于:x<=y =  True      不等于:x!=y =  True

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

2.字符型

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

09f70313aa41a4326e95f327cf7ade52.png

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

In [7]:# 字符串      type("student")Out[7]:str 

字符串的运算

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

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

In [8]:# 字符串连接      "data"+"cola"Out[8]:'datacola'

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

In [9]:# 字符串复制      "data_cola"*2Out[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在逻辑上是假的。

0f61890251e34a08786e3f6225005747.png

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

fce6796cfbf4d2703789225495371a77.png

Python中,也是这样显示的。

IN [22]:1>2Out[22]:False

逻辑值的运算

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

ab5707f28458ddfbfe2349a909afbdf7.png

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的教程里还会有位运算符、赋值运算符、成员运算符等,我们这个笔记里就不说了先,后续用到再补充。

写在后面

工作的时间越长,越发现自己在做一些机械性、重复性的东西,这样对自己的成长其实是没有帮助的,学python可能不是你工作必需,但绝对能提升你的工作效率,多学一点总是好的,并且很多东西你现在学了不知道有什么用,说不定以后哪天就用上了呢?

越学python吧,越发现一个道理,最能提高你学习效率的,其实是刚需。你学一个东西要是没有刚需,你其实是不会特别在乎它的,别人2个月入门,你可能要搞一年,这个我太有体会了,之前python于我就不是刚需,有它是锦上添花,无它无非我多花1、2个小时,但每天重复工作2个小时,一个月就是60个小时,有这个时间,我python早就学会了好吗。

于是我重新开始审视自己,找到自己学python的刚需,希望大家也能找到,动起来吧!

感谢阅读 5bd92431adbe4be8fae88ae743809b7a.png

推荐阅读:

1:真实的上海IT圈:张江男vs漕河泾男

2:真实的北京IT圈:后厂村姑 vs 后厂村花?

3:为什么你的提问没人解答?

4:Python爱好者社区历史文章合集

b61db9230af7d54a12ffe64018b6cefd.png

c0816d7724202d5529adb2b7d1933c58.png好看请点这里~
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值