python学习记录6

(1)循环嵌套

可以将一个循环语句所属的语句块也可以是一个完整的一个循环语句,一般嵌套不应该超过3层。

嵌套可以是while-while、for-for,也可以是while-for。

基本图形输出:正方形,直角三角形

python 复制代码
#输入一个数字n,打出一个n*n的实心正方形
n = eval(input())
N = n
while n>0 :
    print('*'*N)
    n -=1
#输入一个数字n,打出n*n的空心正方形
n = eval(input())
N = n
S = n-2
print('*'*N)
while n-2>0:
    n -= 1
    print('*'," "*S,'*',sep="")
print('*' * N)
#输入一个数字n打出高为n底为n的实心直角三角形
n = eval(input())
s = 1
while n>0:
    print('*'*s)
    s+=1
    n-=1
#输入一个数字n打出高为n底为n的空心直角三角形
n = eval(input())
s = 1
N = n
while n-1>0 :
    if s<=2 :
        print('*'*s)
    else :
        print('*'," "*(s-2),'*',sep = '')
    n-=1
    s+=1
print('*'*N)

嵌套循环图形输出:长方形、平行四边形、菱形

python 复制代码
#输出一个长为n,宽为m的实心长方形
n = eval(input('请输入长方形的长:'))
m = eval(input('请输入长方形的宽:'))
for i in range(0,m):
    for j in range(0,n):
        print('*',end = "")
    print()
#输出一个长为n,宽为m的空心长方形
n = eval(input('请输入长方形的长:'))
m = eval(input('请输入长方形的宽:'))
for i in range(0,m):
    for j in range(0,n):
        if i==0 or i ==m-1 :
            print('*',end = "")
        else:
            if j==0 or j==n-1 :
                print("*",end = "")
            else:
                print(" ",end = "")
    print()
#输出一个长为n,高为m的实心平行四边形
n = eval(input('请输入平行四边形的长'))
m = eval(input('请输入平行四边形的高'))
s = m
for i in range(0,m):
    print(" "*s,end="")
    s -= 1
    for j in range(0,n):
        print("*",end = "")
    print()
#输出一个长为n,高为m的空心平行四边形
n = eval(input("请输入平行四边形的长"))
m = eval(input("请输入平行四边形的高"))
s = m
for i in range(0,m):
    print(" "*s,end = "")
    for j in range(0,n):
        if i==0 or i==m-1:
            print('*',end = '')
        else:
            if j==0 or j==n-1:
                print("*",end ="")
            else:
                print(" ",end = "")
    s-=1
    print()
#输入x,输出x个长对称轴长度为2n,短对称轴长度为2m的实心菱形
x = eval(input("请输入需要输出的菱形个数:"))
n = eval(input("请输入长对称轴长度"))
m = eval(input("请输入短对称轴长度"))
s = m-1
t = m
while x>0:
    for i in range(0,n):
        print(" "*s,end="")
        s-=1
        for j in range(t-1,m):
            print('*',end ="")
        t -=2
        print()
    print("*"*(2*m-1),end="")
    print()
    s=1
    t=1
    for i in range(0,n):
        print(" "*s,end="")
        s+=1
        for j in range(0,2*(m-t)-1):
            print('*',end ="")
        t +=1
        print()
    print()
    x-=1
    s = m-1
    t = m

(2)循环跳出

break语句

break语句经常与if语句一起使用。在循环中使用break语句可以使某个变量在满足if设定的某种条件过后(if语句结果为True)结束循环,此时的循环拓展语句else不会执行。若不满足条件则继续循环。

python 复制代码
#输入一个字符,查找字符串里是否含有该字符
print("请输入任意字符串:")
s =input()
print("你想要查找的字符")
x = input()
i = 0
l = len(s)-1
for i in range(0,l+1):
    if x==s[i]:
        print("字符串里有该字符")
        break
else:
    print("字符串里没有字符串")

continue语句

与break语句类似,continue语句也经常与if使用。continue用于while语句,其作用与break语句的区别是break是当某种变量满足if语句设定的某种条件过后不再执行之后的语句块,此时循环不会终止,而是回到循环变量语句的判断中执行下一次循环。

python 复制代码
#输入1-100中所有偶数的和
s = 0
for i in range(1,11):
    if i%2!=0:
        continue
    else:
        s +=i
print(s)

(3)空语句pass

pass语句属于占位符,占位符作用是在一些分支语句、循环语句以及函数定义时将结构所属的某个语句进行占位,占位的意思就是psss语句本身没有意义,但可以使得语法结构完整从而不报错。它与continue语句的区别就是continue是跳过本次循环,continue是有意义的;而pass是一个无意义的语句。

python 复制代码
s = 0
for i in range(1,11):
    if i%2!=0:
        pass
    else:
        s +=i
print(s)
#输出10到100的偶数和
s = 1
while s<10:
    s+=1
    pass
while s>=10:
    s +=1
    if s%2==0:
        s+= s
    else:
        continue
    if s>=100:
        break
print(s)
相关推荐
湫ccc5 分钟前
《Python基础》之pip换国内镜像源
开发语言·python·pip
hakesashou7 分钟前
Python中常用的函数介绍
java·网络·python
菜鸟的人工智能之路17 分钟前
极坐标气泡图:医学数据分析的可视化新视角
python·数据分析·健康医疗
菜鸟学Python17 分钟前
Python 数据分析核心库大全!
开发语言·python·数据挖掘·数据分析
小白不太白95019 分钟前
设计模式之 责任链模式
python·设计模式·责任链模式
喜欢猪猪25 分钟前
Django:从入门到精通
后端·python·django
糖豆豆今天也要努力鸭30 分钟前
torch.__version__的torch版本和conda list的torch版本不一致
linux·pytorch·python·深度学习·conda·torch
何大春1 小时前
【弱监督语义分割】Self-supervised Image-specific Prototype Exploration for WSSS 论文阅读
论文阅读·人工智能·python·深度学习·论文笔记·原型模式
在下不上天1 小时前
Flume日志采集系统的部署,实现flume负载均衡,flume故障恢复
大数据·开发语言·python
SEVEN-YEARS1 小时前
深入理解TensorFlow中的形状处理函数
人工智能·python·tensorflow