蓝桥杯训练-字符串对比(day8)

一、题目

给定两个仅由大写字母或小写字母组成的字符串(长度介于1到10之间),它们之间的关系是以下四种情况之一:

    1.两个字符串长度不等。例:Beijing,Tianjing

    2.两个字符串不仅长度相等,而且相应位置上的字符完全一致(区分大小写)。例:Beijing,Beijing

    3.两个字符串长度相等,相应位置上的字符仅在不区分大小写的情况下才能达到完全一致。例:Beijing,beiJING

    4.两个字符串长度相等,但是即使不区分大小写也不能使这两个字符串一致。例:Beijing,Nanjing

编程判断两个字符串之间的关系属于这四类中的哪一类,给出所属类的编号。

输入:

输入两行字符串

输出:

一个数字表示两个字符串之间的关系的编号

二、例子

输入:

Beijing

Tianjing

输出:

1

三、涉及的知识

  • if-elif-else

if 条件1:

    条件1满足应该做的事

elif 条件2:

    条件2满足应该做的事情

elif 条件N:

    条件N满足应该做的事情

else:

    所有条件都不满足应该做的事情

  • lower函数:python中的字符串是不可变的序列,需要lower()方法将字符串中的所有大写字母转换成小写字母。lower()方法通过返回一个新的字符串来完成字符串操作。

注:对于非字符串类型的对象,需要将其转换为字符串后才可以使用lower()方法

       lower()方法不会改变原始字符串,而是返回一个新的字符串

       lower()方法只能将大写字母转换成小写字母,对于数字,标点,特殊字符等并没有影响。

  • if __name__ = '__main__': 防止其他程序调用本程序时,运行本程序的主方法

当python文件被模块引用时__name__为模块名

当python文件直接执行时__name__的值为__main__

1.使用if __name__ = '__main__':

蓝桥杯训练-字符串对比(day8)_第1张图片

在b.py中引入a

蓝桥杯训练-字符串对比(day8)_第2张图片

运行b.py结果:

蓝桥杯训练-字符串对比(day8)_第3张图片

2.不使用if __name__ = '__main__': 

蓝桥杯训练-字符串对比(day8)_第4张图片

在b.py中引入a

蓝桥杯训练-字符串对比(day8)_第5张图片

 运行b.py结果

蓝桥杯训练-字符串对比(day8)_第6张图片

四、python代码

法一:

str1 = input("请输入第一个字符串:")
str2 = input("请输入第二个字符串:")
if len(str1) != len(str2):
    print(1)
else:
    if str1 == str2:
        print(2)
    elif str1.lower() != str2.lower():
        print(4)
    else:
        print(3)

运行结果:

请输入第一个字符串:beijing
请输入第二个字符串:nanjing
4

法二:

def zifu(str1,str2):
    if len(str1) != len(str2):
        return 1
    else:
        if str1 == str2:
            return 2
        elif str1.lower() != str2.lower():
            return 4
        return 3
if __name__ == '__main__':
    str1 = input()
    str2 = input()
    print(zifu(str1,str2))

运行结果:

beijing
Bejing
1
 

你可能感兴趣的:(蓝桥杯,蓝桥杯,python)