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)
相关推荐
从以前11 分钟前
准备考试:解决大学入学考试问题
数据结构·python·算法
枫零NET26 分钟前
学习思考:一日三问(学习篇)之匹配VLAN
网络·学习·交换机
Ven%27 分钟前
如何修改pip全局缓存位置和全局安装包存放路径
人工智能·python·深度学习·缓存·自然语言处理·pip
枫欢29 分钟前
将现有环境192.168.1.100中的svn迁移至新服务器192.168.1.4;
服务器·python·svn
沐泽Mu1 小时前
嵌入式学习-QT-Day07
c++·qt·学习·命令模式
沐泽Mu1 小时前
嵌入式学习-QT-Day09
开发语言·qt·学习
测试杂货铺1 小时前
UI自动化测试实战实例
自动化测试·软件测试·python·selenium·测试工具·测试用例·pytest
炸毛的飞鼠1 小时前
汇编语言学习
笔记·学习
余~~185381628001 小时前
NFC 碰一碰发视频源码搭建技术详解,支持OEM
开发语言·人工智能·python·音视频
苏三有春1 小时前
PyQt实战——使用python提取JSON数据(十)
python·json·pyqt