python打印数字图形(python打印完数)

http://www.itjxue.com  2023-03-27 06:15  来源:未知  点击次数: 

用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,回车后的结果:

(责任编辑:IT教学网)

更多

推荐java认证文章