面试小题(压缩,判重等)

2019-05-14  本文已影响0人  小胡123

压缩(abbsd------1a2b1s1d)

import itertools
a = input('请输入字母:')
l = [(k, len(list(g))) for k, g in itertools.groupby(a)]
print(l)
s = ''
for i in l:
    if i[1] != 0:
        s += str(i[1])
        s += str(i[0])
print(s)

回文:从前读和从后读一样(abccba)

text = input('输入')
a = text[::-1]
print(a)
if a == text:
    print('是回文')
else:
    print('不是回文')

判断是否重复

if_b = input('输入')
if len(if_b) == len(set(if_b)):
    print('不重复')
else:
    print('重复')

九九乘法*.

,. 拼接 n行就是n,(n-1).

for i in range(9):
    print(('*'+'.'*(i-1))*i)

运行结果

2019-05-15 16-58-54屏幕截图.png

重组

def str_sort(s=''):
if len(s) <= 1:
    return [s]
str_list = []
for i in range(len(s)):
    for j in str_sort(s[0:i] + s[i + 1:]):
        str_list.append(s[i] + j)
return str_list
str_list = str_sort('abc')
print(len(str_list), str_list)

菜鸟一个,希望大佬指点一二,不胜感谢

上一篇 下一篇

猜你喜欢

热点阅读