# rang()
"""第一种创建方式,只有一个参数(小括号中只给了一个数)"""
r = range(10) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],默认从0开始,默认相差1称为步长
print(r) # range(0,10) 返回值是一个迭代器类型
print(list(r)) # 用于查看range对象中的整数序列 -->list是列表的意思
"""第二种创建方式,给了两个参数(小括号中给了两个数)"""
r = range(1, 10) # 指定了起始值,从1开始,到10结束(不包括10),默认步长为1
print(list(r)) # [1, 2, 3, 4, 5, 6, 7, 8, 9]
"""第三种创建方式,给了三个参数(小括号给了三个数)"""
r = range(1, 10, 2)
print(list(r)) # [1, 3, 5, 7, 9]
print(range(1, 20, 1)) # [1...19]
print(range(1, 101, 1)) # [1....100]
# 优点不管range对象表示的整数序列有多长,所有的range对象占用的内存空间都是相同的
# 因为仅仅需要储存start,stop和step,只有当用到range对象时,才会去计算序列中的相关元素
# in 与 not in判断整数序列是否存在(不存在)指定的整数
# 偶数和1-100
sum = 0
i = 1
while i < 101:
if not bool(i % 2):
sum += i
i += 1
print(sum)
# for循环
for item in 'python': # 第一次取出来的的是p,将p赋值给item,将item的值输出
print(item)
# range()产生一个整数序列,整数序列也是一个可迭代对象
for i in range(5):
print(i)
# 如果在循环体中不需要使用到自定义变量,可将自定义变量写为"_"
for _ in range(5):
print("人生苦短,我学python")
# for循环的偶数和
sum=0
for item in range(1,101):
if item%2==0:
sum+=item
print(sum)
#水仙花数
for item in range(100,1000):
ge=item%10
shi=item//10%10
bai=item//100
if ge**3+shi**3+bai**3 == item:
print(item)
# break 用法
for item in range(100, 1000):
ge = item % 10
shi = item//10 % 10
bai = item//100
if ge**3+shi**3+bai**3 == item:
print(item)