python打印数字图形(python打印完数)
用python打印数字金字塔
num=eval(input('请输入一个整数:'))
print('数字金字塔显示如下:')
level= 1 #金字塔的高度即层数
while level = num:
kk=1 #每一层长度的计数
t=level
length=2*t-1
while kk=length:
if kk==1:
if kk==length:
print(format(t,str(2*num-1)+'d'),'\n')
break
#要形成金字塔型,13d是1的距离,15d是7的距离,然后进行测试
#只要之后的距离比1的距离多2,再减去2倍的层数即可以得到金字塔形状
else:
print(format(t,str(2*num+1-2*level)+'d'),'',end='')
t-=1
else:
if kk==length:
print(t,'\n')
break
elif kk= length/2:
print(t,'',end='')
t-=1
else:
print(t,'',end='')
t+=1
kk+=1
level+=1
在Python用循环打印以下图形?
就是设计个循环从n到1,打印出来数字。思路有很多,
你可以这样想:有个字符串数组是 1234..n-1? 另一个数组是n-1....4321,然后字符串拼接的时候中间加上n就行了。
于是我们程序写作:
def func_3():
?n = 5
?str_1 = str_2 = str_3 = ""
?for i in range(1,n):
? ? str_1 = str_1 + str(i)
? ? str_2 = str_2 + str(n-i)
? ? str_3 = str_3 + " " ? ?
?for i in range(n, 0, -1):
? ? print(f"{str_3[0:n-i]}{str_1[0:i-1]}{str(i)}{str_2[n-i:n-1]}")
func_3()
如何用python编程输出如下图形 1 121 12321?
层数 = 3
for i ?in range(1,层数+1):
print(" "*(层数-i),end="") ? ? ? ?# 数字左侧的空格
for j in range(1,i+1): ? ? ? ? ? ?# 显示左侧数字
print(j,end="")
for j in range(i-1,0,-1): ? ? ? ? # 显示右侧数字
print(j,end="")
print(" " * (层数 - i), end="") ? # 数字右侧的空格
print() ? ? ? ? ? ? ? ? ? ? ? ? ? # 换行
python编程,输入一个字符,用该字符输出一下图形,是一个数字6,用*表示6
#?encoding:utf-8
#?python3.6
#?定义数字对应的字符字典
c_number?=?{0:?[[1,?1,?1],
????????????????[1,?0,?1],
????????????????[1,?0,?1],
????????????????[1,?0,?1],
????????????????[1,?1,?1]],
????????????1:?[[0,?1,?0],
????????????????[0,?1,?0],
????????????????[0,?1,?0],
????????????????[0,?1,?0],
????????????????[0,?1,?0]],
????????????2:?[[1,?1,?1],
????????????????[0,?0,?1],
????????????????[1,?1,?1],
????????????????[1,?0,?0],
????????????????[1,?1,?1]],
????????????3:?[[1,?1,?1],
????????????????[0,?0,?1],
????????????????[1,?1,?1],
????????????????[0,?0,?1],
????????????????[1,?1,?1]],
????????????4:?[[1,?0,?1],
????????????????[1,?0,?1],
????????????????[1,?1,?1],
????????????????[0,?0,?1],
????????????????[0,?0,?1]],
????????????5:?[[1,?1,?1],
????????????????[1,?0,?0],
????????????????[1,?1,?1],
????????????????[0,?0,?1],
????????????????[1,?1,?1]],
????????????6:?[[1,?1,?1],
????????????????[1,?0,?0],
????????????????[1,?1,?1],
????????????????[1,?0,?1],
????????????????[1,?1,?1]],
????????????7:?[[1,?1,?1],
????????????????[0,?0,?1],
????????????????[0,?1,?0],
????????????????[0,?1,?0],
????????????????[0,?1,?0]],
????????????8:?[[1,?1,?1],
????????????????[1,?0,?1],
????????????????[1,?1,?1],
????????????????[1,?0,?1],
????????????????[1,?1,?1]],
????????????9:?[[1,?1,?1],
????????????????[1,?0,?1],
????????????????[1,?1,?1],
????????????????[0,?0,?1],
????????????????[1,?1,?1]],
????????????}
#?定义打印字符函数
def?print_one_number(x):
????number?=?c_number[int(x)]
????for?i?in?range(len(number)):
????????for?j?in?range(len(number[0])):
????????????if?number[i][j]?==?1:
????????????????print("*",?end="")
????????????else:
????????????????print("?",?end="")
????????print("")
if?__name__?==?"__main__":
????print("Input?a?number?between?0?and?9:")
????n?=?input()
????print_one_number(n)
运行上面的程序,输入0到9任意一个数字,回车的后在命令行打印出对应图形。
下面是运行此脚本后,输入数字6,回车后的结果: