[英]Removing Quotation marks in python output from string and list
我必须实现一个函数,它接受一个字符串类型的参数并解析这个参数并返回一个元组,元组的第一个值是单位数,元组的第二个值是测量单位。 我成功地拆分了数字和度量单位,但我需要有关报价位置的帮助。
input_value = "3 ft"
split_list = (input_value.split())
print(split_list)
['3', 'ft']
我如何获得看起来像[3, "ft"]
?
input_value = "3 ft"
split_list = (input_value.split())
try:
split_list[0] = int(split_list[0])
except ValueError:
split_list[0] = float(split_list[0])
print(split_list) [3, 'ft']
如果您不想在单位数周围加上引号,则需要将split_list
的第一个元素(即示例中的三个元素)转换为int
。
至于在度量单位周围获取双引号,默认情况下 Python 使用单引号打印字符串,但您可以使用json。 转储作为一种解决方法,因为JSON字符串必须使用双引号:
import json
input_value = "3 ft"
split_list = input_value.split()
split_list[0] = int(split_list[0])
print(json.dumps(split_list))
输出:
[3, "ft"]
如果您需要支持小数,例如3.5 ft
使用float()
而不是int()
:
import json
input_value = "3.5 ft"
split_list = input_value.split()
split_list[0] = float(split_list[0])
print(json.dumps(split_list))
输出:
[3.5, "ft"]
在这里试试。
您可以做的是使用function
转换列表的值。 因此,当您想为其添加更多格式时,它可以被修改。
列表
alist = ['3', 'ft']
功能
def lista(alist):
number, measure = alist
number = int(number)
alist = [number, measure]
return alist
调用函数
print(alist)
print("print the list after conversion {}".format(lista(alist)))
输出
['3', 'ft']
print the list after conversion [3, 'ft']
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.