如何根据特定字符数比较字符串

问题描述 投票:0回答:3

我想创建一个程序,该程序需要使用键盘输入来根据输入的字符数进行字符串比较。因此,例如,假设输入的字符数为3,并且两个字符串分别为“ tommy”和“ tomatos” ...它将比较“ tom”和“ tom”并确定字符串相等。

我只是从python开始。我知道如何进行字符串比较,但不知道如何合并字符比较。我还没有找到任何在线资源来证明我想做的这件事。

s1 = input ("enter first string: ") 
s2 = input ("enter second string: ") 
n = input ("number of characters: ") 

if s1==s2:
 print(f'{s1} is equal than {s2}')
elif s1>s2:
 print (f'{s1} is greater than {s2}')
elif s1<s2:
 print (f'{s1} is less than {s2}')
else: 
 print ("Error")

此代码没有字符比较。该代码工作正常。

python character string-comparison
3个回答
0
投票

您可以slice字符串,这样仅保留前n个字符:

s1 = input('enter first string: ') 
s2 = input('enter second string: ') 
n = int(input('number of characters: '))
s1 = s1[:n]
s2 = s2[:n]

if s1 == s2:
 print(f'{s1} is equal than {s2}')
elif s1 > s2:
 print (f'{s1} is greater than {s2}')
elif s1 < s2:
 print (f'{s1} is less than {s2}')
else: 
 print ("Error")

0
投票

您只需要比较每个字符串的前n个字符。

要获取字符串s1的第一个字符,请使用

s1[:n]

-1
投票

您可以使用正则表达式。通过使用“ re.match”,如果两个子字符串都匹配,则将输出True,否则显示false。

import re

s1 = input('enter first string: ') 
s2 = input('enter second string: ') 
n = int(input('number of characters: '))

print(re.match(s1[:n],s2[:n]))

© www.soinside.com 2019 - 2024. All rights reserved.