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
例子
-
求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')
-
打印九九乘法表
for num in range(1,10): for i in range(1,10): j = num * i print('%d * % d = %d'%(num,i,j))
-
打印金字塔
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()