c 字符串转数字_数字与字符串在Excel、SQL与Python中的转换方法

数值和字符串是两种很常见且很重要的数据类型,在一些数据处理中,我们往往需要对数据的类型做一些判断和处理,那么这些判断和处理在Excel、SQL和Python中分别是怎么样的呢?让我们一起来学习一下!

一、判断数据类型

1、Excel判断(TYPE函数)

0a8048f7349dde754a36757a32457e59.png

TYPE函数在帮助中的语法如下图所示:

52d0bcd4f27b2f80eb4782bcba720517.png

type函数不同的返回值表示不同的数据类型,如上图所示,但是数组类型的判断不能间接引用单元格,否则会被判断为文本,如下图所示

4599150976f140edc24a94c8a0e5304a.png

如需要判断则公式可以写成=TYPE({1,3;1,4})

另外数据类型的判断公式我们也可以加入LOOKUP函数让结果更具有可读性,如下图所示

d9e2420179e23c2a555745ee054d1272.png

2、SQL判断

0fdbb44cc701de1486d622f2a29cabf9.png

SQL语句如下:

select column_name,data_type From all_tab_columns

where table_name = 'TEST'

使用上面的SQL语句可以将数据库中的某个数据表的所有字段都展示出来并展示每个字段的数据类型,其中,'TEST'表示的数据库的数据表名称,与Excel不一样的是,SQL是每一列(每个字段)只有一种数据类型,所以数据库表中数据类型是按列判断的,而Excel中每一列中每个单元格的数据类型都有可能不一样。

3、Python代码(TYPE函数)

f7943ba3d1904e8126222ed53bf3c79e.png

与Excel一样,Python也是用TYPE函数判断数据的数据类型,不同的是Excel函数公式中type最终展示的都是大写,而Python中的type必须全部小写,否则代码会报错,上面代码中添加的print函数只是要将type函数判断的结果展示出来。

二、数字与字符串数据类型的转换

1.1、Excel公式

f00eb2852c8632565ae363e9bdee541e.png

数字转字符串只需要将数字用连接符号连接空格即可,字符串转换数字将字符串乘以1,或者用双负号(--),从上面截图中我们发现几个问题:

第1个问题是日期在转换数据类型的时候变成了44065,这是什么意思呢?其实这就是日期的庐山真面目,每个日期的本质都是一个正整数;

第2个问题是TRUE在乘以1的时候变成了1,那是因为在Excel四则运算中,TRUE等同于1,FALSE等同于0;

第3个问题是字符串转数字(乘以1)的时候出现了一些#VALUE!错误值,这是因为文本不能与数值相乘,所以所谓的数字与字符串的互转,在Excel中一般指的是数值型数值和文本型数值的转换,例如上图A2和A3单元格,或者是标准日期和文本型的日期的转换,例如A6单元格和A7单元格

最后要补充一点的是除了用函数公式之外,还可以用分列的方法快速转换数字和字符串,如下图所示(具体操作方法可以关注村长往期的公众号文章分享)

e6af66d917eeb3b89e96d205deab59e4.png

2、SQL判断

4cd6d0aaccc46d438047333b7107f013.png

字符串转换数字:

SELECT NAME 转换前,TO_NUMBER(NAME) 转换后 FROM TEST

WHERE (NAME = '34' OR NAME = '56')

日期(数字)转换字符串:

SELECT RQ,TO_CHAR(RQ,'YYYY-MM-DD') FROM TEST

与Excel一样,在数据库表中用SQL将字符串转换数字,也只能转换文本型的数字,而不能转换纯文本,例如“A”、“一村之长”等,所以上面SQL语句中用了where条件取指定字符串数字进行数据类型转换,如果缺少where的条件,SQL执行将会报错,如下图所示

77d298de655d44570f030b77a7e8d0b6.png

请记住这个“无效数字”的报错,我们在日期工作中用SQL处理数据的时候经常会提示这个错误,那是因为当我们在对数字做一些不可描述的事情的时候,非数字的字符串是很不被待见的。

3、Python代码

1663cc8304860f66fd782270622a50a8.png

与Excel一样,Python在处理数字与字符串的转换的时候也只能将文本型的数字和数值型的数字进行互相转换,而不能转换纯文本,例如“abc”,否则会导致执行报错,在Python中,用int函数将字符串数字转换成整数型数字,用str函数将数字转换成字符串。

好了,今天的分享就先到这里吧,下面插播一则广告放松一下,感兴趣的朋友可以了解一下!

b905f420a03ffbe65cef6eeb3f381352.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值