疫情环境下的网络学习笔记 python 之元组&for循环

2.24自学

range函数

range (start,stop,step) 创建一个整数列表,一般用在 for 循环中

以step为步长,创建一个从start到stop的列表,不包括stop:==要头不要尾==

range(1,5)     # [1,2,3,4]
range(5)       # [0,1,2,3,4]
range(0,10,3)  # [0,3,6,9]
使用范例
# 输出:012346789 :
for i in range(10):
    print(i,end ='')
# 使用for循环和range打印字符串中的每个字符
x = 'deimos'
for i in range(len(x)):
    print(x[i],end=' ')

range() 无法直接打印

x = range(10)
print(x)  # 输出结果 range(0, 10)
len()

len() 方法返回对象(字符、列表、元组等)长度或项目个数,相当于JavaScript里的 .length

list()

用于将元组转换成列表

元组

元组:基本数据类型之一,与列表很像,但 不能进行修改

tup = (1,'aaa','bbb')
print(tup[1])  # 输出结果 aaa

如果要给元组中元素修改或赋值,会报错

创建元组时,若元组只包含一个元素,要在元素后面加 ,

tup = (50,)

拼接元组:用 + 来拼接两个元组

x = ('aaa','bbb',133)
x2 = ('aaa','bbb',111333)
x3 = x+x2  # 输出结果('aaa', 'bbb', 133, 'aaa', 'bbb', 111333)

可以使用元组在for 循环中进行迭代

for循环

for 循环可以遍历任何序列的项目(可迭代对象:字符串,列表,元祖,字典,集合),for对不可迭代对象执行如整型,会报错

使用方法如下

x = (50,50,100,100)
for element in x:
    print(element,end=' ') # 输出 50 50 100 100 

element 是自订变量的名称,随意改

if 语句一样 要加冒号,子代码块缩进四个空格

range() 可以创造一个可被for 迭代的对象。range:范围

例子

# 使用for 和range求 1~100的和
total = 0
for e in range(1,101):  # 要头不要尾,所以是101
    total +=e
print(total) 

for + else

当 for 在正常执行完,而不是被break打断,则执行else后的代码块

for和while一样可以嵌套,可以使用 break、continue

例子

  1. 求10到19所有的质数,执行完毕后打印end

    for num in range(10,20):  # 迭代 10 到 20 之间的数字
       for i in range(2,num): # 根据因子迭代
          if num%i == 0:      # 确定第一个因子
             j=num/i          # 计算第二个因子
             print ('%d 等于 %d * %d' % (num,i,j))
             break            # 跳出当前循环
       else:                  # 循环的 else 部分
          print (num, '是一个质数')
    else:
        print('end')
  2. 打印九九乘法表

    for num in range(1,10):
        for i in range(1,10):
            j = num * i
            print('%d * % d = %d'%(num,i,j))
  3. 打印金字塔

max_level=5
for current_level in range(1,max_level+1):
    for i in range(max_level-current_level):
        print(' ',end='') #在一行中连续打印多个空格
    for j in range(2*current_level-1):
        print('*',end='') #在一行中连续打印多个空格
    print()

猜你喜欢

转载自www.cnblogs.com/telecasterfanclub/p/12358900.html