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

我有一个关于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 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
这一解释看起来很好!多谢各位