前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python笔记 第三章

Python笔记 第三章

作者头像
字节星球Henry
发布2022-09-23 12:51:31
1740
发布2022-09-23 12:51:31
举报

for 循环语句

代码语言:javascript
复制
for i in range(5): #[1,5)
    print(i)
代码语言:javascript
复制
for i in range(-10,-100,-30): #步长-30
    print(i)

# >> -10 -40 -70(每个数单独一行)
代码语言:javascript
复制
for i in range(0)
    print(i) #>> 无输出
代码语言:javascript
复制
for i in range(2,2)
    print(i) #>> 无输出

(注意 :,print 前有四个空格)

for 循环遍历列表

写法一
代码语言:javascript
复制
a = ['vx','QQ','YEB']
for i in range(len(a)):# len 求列表长度(元素个数)
    print(i,a[i])
#>>0 vx
#1 QQ
#2 YEB
  • len 也可以用来求字符串长度,元组、集合、字典元素个数
代码语言:javascript
复制
print(len("abc")) #>>3
写法二
代码语言:javascript
复制
a = ['vx','QQ','YEB']
for i in a:
    print(i)
#>>vx QQ YEB(转行)
代码语言:javascript
复制
for letter in 'omage':
    print (letter)
#>>o m a g e(转行)

break 语句

代码语言:javascript
复制
a = ['vx','QQ','YEB']
for i in a:
    if i =='QQ':
        print("over")
        break #跳出循环
    print(i)
else:
    print("Not break")
print("Done!")
#>>vx
#over
#Done!

continue 语句

代码语言:javascript
复制
for letter in 'omage':
    if letter == 'a':
        continue #不执行此次循环,执行下一次循环
    print (letter)
#>>o
m
g
e

补充

  • 字符的编码
代码语言:txt
复制
- ord(x) 求字符 x 的编码
- chr(x) 求编码为 x 的字符

(使用 ASCII 编码方案)

代码语言:javascript
复制
for i in range(26):
    print(chr(ord('a') + i),end="")
#连续输出 26 个英文字符

例题

代码语言:javascript
复制
n = int(input("请输入将要输入数字的个数:"))
total = 0
for i in range(n): #进行 n 次
    total +=int(input("请输入要加的数字:"))
print(total)
#输入 n 个整数求和
代码语言:javascript
复制
n = int(input("请输入一个整数:"))
for i in range (1,n+1):
    if n % i == 0:
        print(i)

# 输入一个正整数 n,从小到大输出它的公因数
代码语言:javascript
复制
n = int(input("请输入一个整数:"))
for i in range (n,0,-1):
    if n % i == 0:
    print(i)
#从大到小

多重循环

代码语言:javascript
复制
for i in range n:
    # ...
    for j in range m:
        # ...
代码语言:javascript
复制
#从 n 里取两个数使其和等于 m,且每个数只能取一次
c = input("请输入 n m:").split()
n,m = int(c[0]),int(c[1])
for i in range(1,n):# n-1 种取法
    for j in range(i + 1,n + 1):#使 i>j,避免重复
        if m % (i + j) == 0:
            print(i,j)
            break #后面的 j 不再取,换下一个 i
  • 多重循环中的 break 只会跳出那重循环,不会跳出多重循环

while 循环

代码语言:javascript
复制
count = 0
while count<5:
    print(count,"小于 5")
    count = count + 1
else:
    print(count,"大于或等于 5")
代码语言:javascript
复制
i=0
while i<26:
    print(chr(ord('a') + i),end="")
    i+=1
代码语言:javascript
复制
s = input().split()
x,y,z = int(s[0]),int(s[1]),int(s[2])
n = m =max(x,y,z)#从最大的数开始试
while not(n%x==0 and n%y==0 and n%z==0):
    n +=m #隔 m 个试一次
print(n)
#求三个数的最小公倍数

综合例题

代码语言:javascript
复制
#求斐波那契数列第 n 项
n =int(input())
c1=1
c2=1
for i in range (n-2):
   c3=c1+c2
    c1=c2
    c2=c3
print(c3)
代码语言:javascript
复制
#求阶乘的和
n = int(input())
s=0
for i in range (1,n+1):
    f=1
    for j in range (1,i+1):
        f*=j #重复计算多
        s+=f
print(s)
代码语言:javascript
复制
# 角谷猜想
n=int(input("请输入一个正整数:"))
while n!=1:
    if n%2==1:
    print(str(n)+"*3+1="+str(n*3+1))
    n=n*3+1
    else :
        print(str(n)+"/2="+str(n//2))
    n=n//2
print("End")

# 法2:
n=int(input("请输入一个正整数:"))
b = n
for i in range(n):#n 取多少合适
temp=b
if b==1:
break
if b%2==1:
b1=b*3+1
b =b1
print("%d = %d * 3 + 1"%(b1,temp))
if b%2==0:
b1=b/2
b=b1
print("%d = %d / 2"%(b1,temp))
#上式如何改正,已改;法 2:
代码语言:javascript
复制
#输入一个范围,找出 2 的个数
s=input().split()
ran1,ran2=int(s[0]),int(s[1])
tol=0
for i in range(ran1,ran2+1):
    s=str(i)
    for x in s:
        if x =="2":
            tol+=1
print(tol)
#法 2:
s=input().split()
ran1,ran2=int(s[0]),int(s[1])
tol=0
for i in range(ran1,ran2+1):
    if i/10==2 and i%10==2:
        tol+=2
        continue
    if i/10==2 or i%10==2:
        tol+=1
print("%d"%(tol))

字节星球 林栈 2022-08-21

https://cloud.tencent.com/developer/article/2119703


版权属于:字节星球 (转载请联系作者授权)

原文链接:https://cloud.tencent.com/developer/article/2119703

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • for 循环语句
  • for 循环遍历列表
    • 写法一
      • 写法二
      • break 语句
      • continue 语句
      • 补充
      • 例题
      • 多重循环
      • while 循环
      • 综合例题
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档