20181210Python 自动化笔试题,挑战你的知识库

本贴最后更新于 1611 天前,其中的信息可能已经时移俗易

image.png

柠檬班学员面试遇到的笔试题!!!
出招吧各位大佬!

26 回帖
请输入回帖内容 ...
  • huahua

    真优秀!!!

  • 其他回帖
  • Chouchiehlun257248
    # 镜像星星金字塔
    def mirror_star_pyramid(n):
        i = 1# 给定初始值
        star_list1 = []# 存正金字塔每一层元素
        star_list2 = []# 存倒金字塔每一层元素
        while i <= n:
            star_list1.append(' '*((n-i)//2) + '*'*i + ' '*((n-i)//2))
            # n的奇偶性将决定倒金字塔的元素是跟正金字塔一样还是比正金字塔少一层
            if n % 2:
                star_list2.append(' '*((i+1)//2) + '*'*(n-i-1) + ' '*((i+1)//2))
            else:
                star_list2 = star_list1[::-1]
            i += 2
        for each in star_list1:print(each)
        for each in star_list2:print(each)
    
    if __name__ == '__main__':
        mirror_star_pyramid(5)
        mirror_star_pyramid(6)
    
  • mmklyz

    早上花了差不多一个小时,才搞出来,如果面试,啊,磨磨唧唧肯定写不出来。主要是算空格 * 和行的关系。代码中区分了n为奇数或偶数的情况。附上代码:
    image.png

    n=9时:
    image.png

    n=10的时候:
    image.png

  • changhen

    代码付上,任意整数的阵列,还在公司不能电脑截图
    def wan(k):
    m=1
    n=int((k+1)/2)
    for i in range(1,k+1):
    if i<=(k+1)/2:
    n-=1
    print(' '*n+'*'*m)
    if i<(k+1)/2:
    m+=2
    else:
    if k%2==0:
    m-=2
    print(' '*n+'*'*m)
    n+=1
    else:
    n+=1
    m-=2
    print(' '*n+'*'*m)
    wan(6)

  • 查看更多回帖