格式化传数据
name = 'tom'
age = 20
info = '我叫%s,年龄是%s' %(name,age) # %s---这个位置传入的值时字符串,解释器会自动转
#格式化不允许传入的参数是列表
print('%5d' %56)#指定宽度输出,至少 >= 本身的长度
print('%05d' %56)#输出为00056
#%-5d --左对齐右补齐 %5d -- 右对齐左补齐
print('%f' % 3.141593678) #默认6位小数,四舍五入
print('%.3f' %3.141576444) #保留三位小数
print('%6.3f' %3.1415926) #6表示整体长度为6
位置不能空着 就是只要你写了{} format方法就要传进去足够的参数:但是format方法传的值可以多
name = 'tom'
age = 30
info = '我叫{},年龄是{}' .format(name,age) # 不能传列表
info = '我叫{:<6},年龄是{:<6}' .format(name,age)#:补齐字符
info = '我叫{0:*<6},年龄是{0:<6}' .format(name,age)#下标填值
info = '我叫{name},年龄是{age}' .format(name = 'tom',age = 20)#变量填值
info = f'我叫{name:*>6},年龄是{age:*>6},' #右对齐左补齐 6位
求1到100的和:实现基本代码如下
def get_sum()
cnt = 1
while cnt <= 100:
sum+=cnt
cnt+=1
#这个函数只能实现1-100的累加 复用性不好
#现在要求可以实现任意范围的累加
#实现任意范围可以加上开始和结束的参数
def get_sum(start,end)
cnt = start
while cnt <= end:
sum+=cnt
cnt+=1
#但是 如果要实现等差,等比这样的数列的和呢?
#我们可以考虑加上步长,不要固定每次加1 可以加指定的
def get_sum(start,end,step)
cnt = syart
while cnt <= end:
sum+=cnt
cnt+=step
for循环适用于遍历操作,需要指定循环的次数
namelist = ['tom','jack']
for name in namelist:
print(name)
#指定循环次数
for one in range(开始,结束,步长---默认是1)
外层的循环几次,内层代码就会全部执行几次
nameList = ['tom','lily','Jack']
for one in range(0,3):
for name in nameList:
if name == 'Jack':
print('有JACK!')
#输出 3次
#continue,跳过循环
a = '2123456'
for letter in a:
if letter == '2':
continue
print(letter)
#运行结果:1 3 4 5 6
#break,跳出循环
b = '1234567'
for sam in b:
if sam == '2':
break
print(sam)
运行结果:1
var = 10
while var > 0:
print(var)
var = var - 1
if var == 5:
break
print('Good Bye')
#运行结果:10 9 8 7 6 Good Bye