分享两道某大厂的测试题

某大厂的两道简单的测试题

直接看题吧
题1:

# Q1:输入一个字符串,计算其以空格、tab空白符分割后,有多少个子字符串。
string_ = "aa bb cc dd cc"

def test(s):
	# 方法一:直接用split()方法
    # return len(s.split(' '))  # 错误方式,考虑不全
    # return len(s.split())  # 应该是符合的,从源码里可见ta只是分割的范围比题目要求的多
    
    # 方法二:使用正则
    import re
    regex = re.split('\t| ', s)  # 或者 re.split('\s+', s)
    print(regex)
    return len(regex)

if __name__ == '__main__':
    print(test(string_))

题2:

# Q2:一个数字或字符在形状上可能存在封闭的区间,
#     比如数字8有两个封闭区间,大写字母A有一个封闭区间,小写字母c和数字5没有封闭区间。
# 输入:非空字符串,只包含0-9,a-z,A-Z
# 输出:字符串中,封闭区间的个数

enclosure_dict = {'0': 1, '4': 1, '6': 1, '8': 2, '9': 1,
                  'a': 1, 'b': 1, 'd': 1, 'e': 1, 'g': 1, 'o': 1, 'p': 1, 'q': 1,
                  'A': 1, 'B': 2, 'D': 1, 'O': 1, 'P': 1, 'Q': 1, 'R': 1}

def test(s):
    total = 0
    for i in s:
        count = enclosure_dict.get(i, 0)
        total += count
    return total

if __name__ == '__main__':
	s = "1234ABCDEFGOab"
	print(test(s))

通过这次机会,也认识了一个好友,加了微信简单地交流了一下关于某厂某岗位的招聘要求,有收获颇多,感觉不错,帮助别人真好,多交友多学习~

发布了87 篇原创文章 · 获赞 43 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/qq_31362767/article/details/104574283