日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python中while语句的用法_python 使用while循环输出*组成的菱形实例

發布時間:2024/9/15 python 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python中while语句的用法_python 使用while循环输出*组成的菱形实例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一,python輸出*組成的菱形(實心):

python代碼:

x = int(input('請輸入最長行的*的個數:'))

y = int(input('請輸入每個*之間的間隔:'))

i = 1

while i<= x: #第一個while組成菱形上半部

j = 1

k = 1

while k <= x-i:

print(' '*y,end = '') #每一行最左邊到第一個*之間的空格

k += 1

while j <= i:

print('*', end=' '*(2*y-1)) #每一行*的個數和*與*之間的間隔,要計算好才能上下對齊

j += 1

print('\n')

i += 1

while i <= 2*x-1: #第二個while組成菱形下半部

a = x+1

b = 2*x-1

while a <= i:

print(' '*y, end='')

a += 1

while b >= i:

print('*', end=' '*(2*y-1))

b -= 1

print('\n')

i += 1

二,python輸出*組成的菱形(空心):

代碼

x = int(input('請輸入最長行的*的個數:'))

y = int(input('請輸入每個*之間的間隔:'))

i = 1

#前兩個while組成上半部

while i <= 1: #菱形上頂點單獨列出

k = 1 #寫出最左邊到*的空格和第一個*

while k <= x - i:

print(' ' * y, end='')

k += 1

print('*')

print('\n')

i += 1

while i<= x:

k = 1

j = 1

while k <= x-i: #這個while寫出最左邊到左邊*的空格數

print(' '*y,end = '')

k += 1

print('*', end=' '*(2*y-1)) #這寫出左邊*,*相當于占一個空格,所以*后面的空格少一個,才能上下對齊

while j <= i-2: #這個while寫出左邊*到右邊*的空格數

print(' '*2*y,end='')

j += 1

print('*') #這寫出右邊*

print('\n')

i += 1

#后兩個while組成下半部

while i <= 2*x-2:

k = x+1

j = 2*x-2

while k <= i:

print(' '*y, end='')

k += 1

print('*', end=' '*(2*y-1))

while j-1 >= i:

print(' ' *2* y, end='')

j -= 1

print('*',end='')

print('\n')

i += 1

while i <= 2*x-1: #菱形下頂點單獨列出

k = 2 * x - 1

while k >= i+2 - x:

print(' '*y, end='')

k -= 1

print('*')

print('\n')

i += 1

補充知識:Python -- 使用循環語句永 “ * ” 輸出一個對線菱形

#使用循環語句輸出一個對線菱形

layer = int(input("請輸入要打印的層數:"))

#保證輸入的數字是奇數

while layer % 2 == 0:

#偶數

layer = int(input("輸入層數,必須是一個奇數:"))

#上半部分

for x in range(1, layer // 2 + 2):

# 先打印空格

space_num = layer - x

for y in range(1, space_num + 1):

print(" ", end="")

# 在打印*

star_num = 2 * x - 1

for y in range(1, star_num + 1):

if y == 1 or y == star_num or x == layer // 2 + 1 or y == star_num // 2 + 1:

print("*", end="")

else:

print(" ", end="")

# 換行

print("")

#下半部分

for x in range(layer // 2, 0, -1):

# 先打印空格

space_num = layer - x

for y in range(1, space_num + 1):

print(" ", end="")

# 在打印*

star_num = 2 * x - 1

for y in range(1, star_num + 1):

if y == 1 or y == star_num or x == layer // 2 + 1 or y == star_num // 2 + 1:

print("*", end="")

else:

print(" ", end="")

# 換行

print("")

輸出舉例:

以上這篇python 使用while循環輸出*組成的菱形實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持我們。

本文標題: python 使用while循環輸出*組成的菱形實例

本文地址: http://www.cppcns.com/jiaoben/python/307084.html

總結

以上是生活随笔為你收集整理的python中while语句的用法_python 使用while循环输出*组成的菱形实例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。