python中怎么实现星星排列?下面给大家带来几种排列阵型。
星星阵型1def stars1(n):for i in range(1,n+1):str = "*"*iprint strif __name__ == "__main__":stars1(5)
星星阵型2def stars2(n):for i in range(1,n+1):str = '*'*(n+1-i)print strif __name__ == "__main__":stars2(5)
相关推荐:《Python视频教程》
星星阵型3def stars3(n):for i in range(1,n+1):str = ' ' * (n-i) + '*' * iprint strif __name__ == "__main__":stars3(5)
星星阵型4def stars4(n):for i in range(1,1+n):#total n line(s)str = ' '*(i-1) + '*'*(n+1-i)print strif __name__ == "__main__":stars4(5)
5. 菱形阵型def stars5(n): RANGE1 = [2*i+1 for i in range(n)] RANGE2 = [2*i+1 for i in range(n)[::-1]][1:] RANGE = RANGE1 + RANGE2 RANGE_1 = [i for i in range(n)[::-1]] RANGE_2 = [i for i in range(n)[1:]] RANGE_12 = RANGE_1 + RANGE_2 for i in range(len(RANGE)): print ' '*RANGE_12[i] + '*'*RANGE[i] if __name__ == "__main__":stars5(5)
6. 沙漏阵型def star6(n): a = [i*2+1 for i in range(n)[::-1]] b = [i*2+1 for i in range(n)][1:] aa = a + b d = [i for i in range(n)] e = [i for i in range(n)[::-1]][1:] dd = d + e for j in range(len(dd)): print ' '*dd[j] + '*'*aa[j] if __name__ == "__main__": star6(5)