Python在不带括号的逗号上拆分
我有一个关于Python语法的问题 当解析字符串并将其转换为浮点时,我遇到了一个问题 我有密码Python在不带括号的逗号上拆分,python,split,Python,Split,我有一个关于Python语法的问题 当解析字符串并将其转换为浮点时,我遇到了一个问题 我有密码 print "Please enter in x1 and y1 separated by a comma" in1 = input() sp1 = str(in1).split(',') x1 = sp1[0] 如果我进去 5.4,3.2 打印出x1,我明白了 (5.4 这个额外的括号使我很难将其转换为浮点进行进一步计算。 但是,如果我基于十进制进行拆分,例如 print "Please e
print "Please enter in x1 and y1 separated by a comma"
in1 = input()
sp1 = str(in1).split(',')
x1 = sp1[0]
如果我进去
5.4,3.2
打印出x1,我明白了
(5.4
这个额外的括号使我很难将其转换为浮点进行进一步计算。
但是,如果我基于十进制进行拆分,例如
print "Please enter in x1 and y1 separated by a comma"
in1 = input()
sp1 = str(in1).split('.')
我可以将x1打印为
5
我没有得到好的括号,但是我也没有得到正确的数字
任何帮助都将不胜感激,谢谢在输入中使用逗号提交值时,您会得到一个元组。而不是将其转换为字符串&拆分它,而是直接使用索引访问元素 Ex:
print "Please enter in x1 and y1 separated by a comma"
sp1 = input()
print sp1, type(sp1)
x1 = sp1[0]
print x1
(5.4, 3.2) <type 'tuple'>
5.4
输出:
print "Please enter in x1 and y1 separated by a comma"
sp1 = input()
print sp1, type(sp1)
x1 = sp1[0]
print x1
(5.4, 3.2) <type 'tuple'>
5.4
(5.4,3.2)
5.4
以下是如何做到这一点:
print ("Please enter in x1 and y1 separated by a comma : ")
in1 = input()
sp1 =" ".join(str(in1).split(','))
print(sp1)
输入
1.1,1.2
输出
1.1 1.2问题似乎是
input()
对表达式求值,并返回所求值的内容<代码>5.4,3.2似乎被计算为一个元组
解决方案是使用
raw_input()
,它只会将输入的文本作为字符串返回。如果可能的话,也可以使用Python 3,它将input()
更改为执行raw\u input()
对Python 2所做的操作。我遵循了您的步骤,无法重现该问题。当输入5.4,3.2
,在处拆分字符串,
并将第一部分分配给x1时,x1对于我(Python 3.6)来说是5.4
,正如这里所提到的input()
计算您输入的Python代码,然后因为逗号而认为它是元组。使用原始输入()。您想先转换为str
然后提取号码的原因是什么?Python已经为您完成了这项工作,所以您可以只做x1,y1=in1
这一解释看起来很好!多谢各位