python如何将字符转换为数字

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python如何将字符转换为数字相关的知识,希望对你有一定的参考价值。

参考技术A int(x [,base ])         将x转换为一个整数    

long(x [,base ])        将x转换为一个长整数    

float(x )             将x转换到一个浮点数    

complex(real [,imag ])     创建一个复数    

str(x )              将对象 x 转换为字符串    

repr(x )             将对象 x 转换为表达式字符串    

eval(str )            用来计算在字符串中的有效Python表达式,并返回一个对象    

tuple(s )             将序列 s 转换为一个元组    

list(s )             将序列 s 转换为一个列表    

chr(x )              将一个整数转换为一个字符    

unichr(x )            将一个整数转换为Unicode字符    

ord(x )              将一个字符转换为它的整数值    

hex(x )              将一个整数转换为一个十六进制字符串    

oct(x )              将一个整数转换为一个八进制字符串

```

print(eval('2.00+1'))#对字符串表达式直接运算

print(type(eval('2.00+1')))#得出浮点数的结果

print(eval('2.00'))#对单个字符串运算

print(type(eval('2.00')))#表现为直接转化为浮点数,我们要的就是她,将文本型数字,转化为数值型数字

```

Python:如何将列中只有数字分量的字符串条目转换为整数? [复制]

【中文标题】Python:如何将列中只有数字分量的字符串条目转换为整数? [复制]【英文标题】:Python: How to convert string entries with only numeric components in a column to integer? [duplicate] 【发布时间】:2020-05-31 20:18:24 【问题描述】:

我有一个包含字符串类型列的数据框,其中包含字符和数字条目。

下面是一个例子 df:

A        B
101a5    12222
11111    e2edw2
22222    33333
asxaa    0045

我想将字符串中只有数值的条目转换为整数,但将其余部分保留为字符串。

最好的方法是什么?

提前致谢!

【问题讨论】:

因为你在一列中有混合类型,所以无论如何你都会得到object dtype。 【参考方案1】:

您可以使用以下功能:

def func(x):
    try:
        return int(x)
    except ValueError:
        return x

df = df.applymap(func)

print(df.applymap(type))

输出:

               A              B
0  <class 'str'>  <class 'int'>
1  <class 'int'>  <class 'str'>
2  <class 'int'>  <class 'int'>
3  <class 'str'>  <class 'int'>

【讨论】:

【参考方案2】:

只需将数据帧转换为整数并忽略任何可能返回原始字符串的错误。

再简单不过了……

df.astype(int, errors='ignore')

# pandas 1.0.0
>>> df.astype(int, errors='ignore').applymap(type)
               A              B
0  <class 'str'>  <class 'int'>
1  <class 'int'>  <class 'str'>
2  <class 'int'>  <class 'int'>
3  <class 'str'>  <class 'int'>

【讨论】:

谢谢!成功了!

以上是关于python如何将字符转换为数字的主要内容,如果未能解决你的问题,请参考以下文章

实验 9 根据材料编程

js 科学计数法

sql 语句 ,怎么将字符型转换为数字型(整型,浮点型)都行,用啥函数 在线等

将字符串转换为数学方程[重复]

将字符串转换为数学评估 [关闭]

如何在 pandas python 中将字符串转换为日期时间格式?