读取空间在python中分隔输入

时间:2011-10-03 16:39:37

标签: python input

这是输入规格
该程序必须读取t行输入。每行包含2个空格分隔值,第一个是名称,第二个是年龄。输入的例子

Mike 18
Kevin 35
Angel 56

如何在python中阅读这种输入?如果我使用raw_input(),则在同一个变量中读取名称和年龄。

更新 我将重新指出这个问题。我们已经知道如何在python中读取格式化输入。有没有办法可以在Python中读取格式化输入?如果是,那么如何?

8 个答案:

答案 0 :(得分:26)

the_string = raw_input()
name, age = the_string.split()

答案 1 :(得分:8)

如果您将其包含在字符串中,则可以使用.split()将它们分开。

>>> for string in ('Mike 18', 'Kevin 35', 'Angel 56'):
...   l = string.split()
...   print repr(l[0]), repr(int(l[1]))
...
'Mike' 18
'Kevin' 35
'Angel' 56
>>>

答案 2 :(得分:4)

假设您使用的是Python 3,则可以使用此语法

inputs = list(map(str,input().split()))

如果你想访问单个元素,你可以这样做

m, n = map(str,input().split())

答案 3 :(得分:2)

如果您已经知道输入字段的数量,则可以执行以下操作:

client_name = raw_input("Enter you first and last name: ")
first_name, last_name = client_name.split() 

如果要迭代用空格分隔的字段,可以执行以下操作:

some_input = raw_input() # This input is the value separated by spaces
for field in some_input.split():
    print field # this print can be replaced with any operation you'd like
    #             to perform on the fields.

“split()”函数的更通用用法是:

    result_list = some_string.split(DELIMITER)

其中DELIMETER替换为您要用作分隔符的分隔符,并在其周围加上单引号。

一个例子是:

    result_string = some_string.split('!')    

上面的代码采用字符串并使用'!'分隔字段字符作为分隔符。

答案 4 :(得分:1)

对于python 3,请使用

  inp = list(map(int,input().split()))
//input => java is a programming language
//return as => ("java","is","a","programming","language")

input()接受来自STDIN的字符串。

split()拆分有关空白字符的字符串,并返回字符串列表。

map()将第二个参数的每个元素传递给第一个参数,并返回一个地图对象

最后list()将地图转换为列表

答案 5 :(得分:0)

对于python 3会像这样 >>> list("[el1,el2,el3]".strip("[]").split(",")) ["el1", "el2", "el3"]

答案 6 :(得分:0)

a=[]
for j in range(3):
    a.append([int(i) for  i in input().split()])

在上面的代码中,给定的输入(即Mike 18 Kevin 35 Angel 56)将存储在数组'a'中,并以[['Mike','18'],['Kevin','35 '],['天使','56']]。

答案 7 :(得分:-2)

对于Python3:

tap(() => this.isLoading = false)