【问题标题】:Python how can you check for consecutive letters in a user input?Python如何检查用户输入中的连续字母?
【发布时间】:2017-11-06 01:18:27
【问题描述】:

每次出现一组 3 个连续字符时,如何在 python 中检查用户输入(根据 qwerty 键盘)。它也应该不区分大小写。

例如:asDFg 应包含三组(asDsDFDFg),每组得分应减去 1 分。

【问题讨论】:

  • 欢迎来到 Stack Overflow!如果您正在寻找连续的字符,不应该包括sDF 吗?你是说你想为每组三个连续的 QWERTY 字符保持一个运行总和(所以每当你看到 asD 你改变它的分数)?
  • @jpyams 是的 sDF 应该包括在内,并且应该有一个运行总数,所以 asDFg 应该返回 3。抱歉问题仓促
  • 如果您已经编写了一些代码作为尝试,请将其包含在您的问题中。 Showing your work 表明你已经为你的问题付出了一些努力,并帮助其他人更好地回答你的问题
  • @jpyams 我会,但我真的不知道从哪里开始。

标签: python


【解决方案1】:

使用三个字符串 a b 和 c 代表 qwerty 键盘中的每一行,并在转换为小写时检查子字符串

a="qwertyuiop"
b="asdfghjkl"
c="zxcvbnm"
str=raw_input()
score=0
for i in range(0,len(str)-2):
    t=str[i:i+3]
    if t.lower() in a or t.lower() in b or t.lower() in c :
        score+=1
    else:
        score-=1
print score

输入

asDFg

输出

3

【讨论】:

  • 您可以通过使用字符串拼接使创建子字符串更整洁:t = str[i:i+3]
猜你喜欢
  • 1970-01-01
  • 2020-03-20
  • 2016-07-07
  • 2015-02-04
  • 2020-12-08
  • 1970-01-01
  • 2018-05-06
  • 2020-03-20
  • 2023-03-25
相关资源
最近更新 更多