python--for循环

for循环:

python中的for循环是用来迭代容器中的每一个元素的,而不是c,java中理解那个循环;

for 零时变量 in 容器:

print(零时变量) #每一个迭代出的元素

range 全局函数:

range(num) # [0, num)区间内所有整数

range(start, end) #[start, end)区间内所有整数

range(start, end, step) # 默认步长是1,但是可以通过第三个参数修改步长

案例1:

*

**

***

****

*****

复制代码
layer = int(input("请输入你想打印的行数:"))
for i in range(0, layer+1):
    for j in range(0, i):
       print("*", end="")
    print()
案例2:

*

***

*****

*******

*********

复制代码
layer = int(input("请输入你想打印的行数:"))
for i in range(0, layer):
    for j in range(0, (2 * i) + 1):
       print("*", end="")
    print()
案例3:

*

* *

* * *

* * * *

* * * * *

方法一:
复制代码
for i in range(1, layer + 1):
    #打印空格的个数
    for j in range(layer - i):
        print(" ", end=" ")
    #打印*的个数
    for j in range(i):
        print("*", end=" ")
    print()
方法二:
复制代码
for i in range(1, layer + 1):
        # 打印空格的个数
        print(" " * (layer - i), end=" ")
        # 打印*的个数
        print("*" * i,)
案例4:

*

* * *

* * * * *

* * * * * * *

* * * * * * * * *

复制代码
for i in range(1, layer + 1):
    #打印空格的个数
    for j in range(layer - i):
        print(" ", end=" ")
    #打印*的个数
    for j in range(2 * i - 1):
        print("*", end=" ")
    print()
案例5:

* * * * * * * * *

* * * * * * *

* * * * *

* * *

*

复制代码
for i in range(layer, 0, -1):
    #打印空格的个数
    for j in range(layer - i):
        print(" ", end=" ")
    #打印*的个数
    for j in range(2 * i - 1):
        print("*", end=" ")
    print()
案例6:

*

***

*****

*******

*********

*******

*****

***

*

复制代码
layer = int(input("请输入一个奇数:"))
while layer % 2 == 0:
    layer = int(input("请输入一个奇数:"))
for i in range(1, layer // 2 + 1):
    print(" " * (layer - i), end=" ")
    print("*" * (2 * i - 1))
for i in range(layer // 2 - 1, 0, -1):
    print(" " * (layer - i), end=" ")
    print("*" * (2 * i - 1))

实验七:(存在问题)

复制代码
layer = int(input("请输入一个奇数:"))
while layer % 2 == 0:
    layer = int(input("请输入一个奇数:"))
for i in range(0, layer // 2 + 2):
    print(" " * (layer - i), end=" ")
    for j in range(2 * i + 1):
        if j == 0 or j == 2 * i:
            print("*", end=" ")
        else:
            print(" ", end=" ")
    print()
for i in range(layer // 2 - 1, -1, -1):
    print(" " * (layer - i), end=" ")
    for i in range(2 * i + 1):
        if j == 0 or j == 2 * i:
            print("*", end=" ")
        else:
            print(" ", end=" ")
相关推荐
Algebraaaaa2 分钟前
为什么C++主函数 main 要写成 int 返回值 | main(int argc, char* argv[]) 这种写法是什么意思?
开发语言·c++
王小王-1239 分钟前
基于Python的二手车价格影响因素研究【多种机器学习对比、线性回归、MLP、SVR、LightGBM】
python·机器学习·汽车·二手车价格预测·二手车价格影响·汽车数据分析
java1234_小锋38 分钟前
一周学会Matplotlib3 Python 数据可视化-绘制饼状图(Pie)
开发语言·python·信息可视化
悟能不能悟2 小时前
能刷java题的网站
java·开发语言
NEUMaple2 小时前
python爬虫(三)----Selenium
爬虫·python·selenium
IT古董2 小时前
【第四章:大模型(LLM)】05.LLM实战: 实现GPT2-(6)贪婪编码,temperature及tok原理及实现
android·开发语言·kotlin
程序员陆通2 小时前
Java高并发场景下的缓存穿透问题定位与解决方案
java·开发语言·缓存
阿群今天学习了吗3 小时前
“鱼书”深度学习进阶笔记(3)第四章
人工智能·笔记·python·深度学习·算法
澡点睡觉3 小时前
golang的继承
开发语言·后端·golang
Pi_Qiu_5 小时前
Python初学者笔记第二十二期 -- (JSON数据解析)
笔记·python·json