Python 如何读取字符串中的空格?
问题是计算机器人手在移动键盘(在屏幕触摸发明之前,手机曾经拥有的旧键盘)中键入信息所需的时间。手的初始位置在键1中 例如:如果它应该键入“hack”,则从键1移动到键4需要1秒,然后键入“h”需要2秒。 现在,再次用1秒的时间从键4移动到键2,然后用1秒的时间键入“a”。 因为“c”与“a”在同一个键上,所以移动时间为0。所以输入“c”只需3秒钟。 最后,它在1秒钟内从键2移动到键5,然后在2秒钟内键入“k”。因此,总共需要1+2+1+1+3+1+2=11秒才能键入“hack”。 这是我针对上述问题的代码:Python 如何读取字符串中的空格?,python,dictionary,Python,Dictionary,问题是计算机器人手在移动键盘(在屏幕触摸发明之前,手机曾经拥有的旧键盘)中键入信息所需的时间。手的初始位置在键1中 例如:如果它应该键入“hack”,则从键1移动到键4需要1秒,然后键入“h”需要2秒。 现在,再次用1秒的时间从键4移动到键2,然后用1秒的时间键入“a”。 因为“c”与“a”在同一个键上,所以移动时间为0。所以输入“c”只需3秒钟。 最后,它在1秒钟内从键2移动到键5,然后在2秒钟内键入“k”。因此,总共需要1+2+1+1+3+1+2=11秒才能键入“hack”。 这是我针对上述
testcases=int(input())
position=1
seconds=0
dictionary={1:".,;?", 2:"abc", 3:"def", 4:"ghi", 5:"jkl", 6:"mno",
7:"pqrs", 8:"tuv", 9:"wxyz", 0:" " }
numbers=['1','2','3','4','5','6','7','8','9','0']
for test in range(testcases):
string=input()
for character in string:
if character in numbers:
if position==character:
seconds+=1
else:
position=character
seconds+=2
else:
for keys in dictionary.keys():
if character in dictionary[keys]:
if int(position)==keys:
seconds+=dictionary[keys].index(character)+1
else:
position=keys
seconds+=dictionary[keys].index(character)+2
break
print(seconds)
position,seconds=1,0
它工作正常,但现在的问题是如何读取字符串中的空格?您可以使用字符串模块
导入字符串
字典={1:,;?”,2:“abc”,3:“def”,4:“ghi”,5:“jkl”,6:“mno”,
7:“pqrs”,8:“tuv”,9:“wxyz”,0:string.whitespace}
然后检查输入的键是否为空白
如果在dictionary.get中键入(0):
打印('输入空白')
我找不到代码有任何错误。据我所知,它确实正确地处理了空格。你说的空格是什么意思。是按空格键还是别的什么。假设字符串是“hacker earth”
,那么中间的空格大约需要2秒钟才能键入(按两次0将提供空格)这是否回答了您的问题?