如何将包含“/”的字符串转换为Python中的float

时间:2018-02-22 23:00:02

标签: python python-3.x type-conversion

我有一些尺寸类型为英寸格式的文字,例如: text =“20 7/8 16 1/4”#前两个代表长度,后两个代表宽度 我可以使用text.split()将此字符串更改为字符串列表,以获取:[“20”,“7/8”,“16”,“1/4”]。

现在,我想将前两个项目20 + 7/8添加到20.875。如何将7/8转换为浮点数?

5 个答案:

答案 0 :(得分:4)

A quick Google search可以向您显示答案

yamlObj = parser.config_parser(logger, theFile)
myYaml = yamlObj.getConfig()
for image in myYaml["repos.images"]:
    myStr = image["foo"] + '/' + image["id"]
    logger.debug("myStr is: " + myStr)

答案 1 :(得分:1)

        .....5 spaces here
$ echo '     809 23/Dec/2008:19:20' | sed 's/^.\{3\,4\}//'
 809 23/Dec/2008:19:20
^1 spaces here preceding the 809    

答案 2 :(得分:1)

text = "7/8"
x = text.find("/")
numerator = float(text[0:x])
denominator = float(text[x+1:])
print(numerator/denominator)

答案 3 :(得分:0)

  

如何将7/8转换为浮点数?

a="7/8".split("/")
a=int(a[0])/int(a[1])

或者如果你不关心安全:

a=eval("7/8")

答案 4 :(得分:0)

num = '7/8'.split('/')
dec = int(num[0]) / int(num[1])