格式华字符串
语法:
格式化字符串 % 参数值
格式化字符串 %(参数值1,参数值2,...)
占位符类型码 | 意义 |
%s | 字符串 |
%r | 字符串,使用repr 而不是str |
%c | 整数转为单个字符 |
%d | 十进制整数 |
%o | 八进制整数 |
%x | 十六进制整数(字符a-f小写) |
%X | 十六进制整数(字符A-F大写) |
%e | 指数型浮点数(e小写),如2.9e+10 |
%E | 指数型浮点数(E大写),如2.9E+10 |
%f, %F | 浮点十进制形式 |
%g, %G | 十进制形式浮点或指数浮点自动转换 |
%% | 等同于一个%字符 |
占位符和类型码之间的格式语法
格式:
%[- + 0 宽度·精度]类型码
-:左对齐(默认是右对齐)
+:显示正号
0:左侧空白位置补0
宽度:整个数据输入的宽度
精度:保留小数点后多少位(默认是6位)
循环语句:
while语句
作用:根据一定条件,重复的执行一条语句或多条语句
语法:
while 真值表达式:
语句块1
else:
语句块2
说明:
- 先执行真值表达式1,测试布尔值是否为True
- 如果真值表达式的值为True,则执行语句1,然后再返回到第一步,重复进行测试
- 如果真值表达式的值为False,则执行else子句中的语句2,然后结束此while语句,如果没有else子句,则直接结束此while语句的执行
- else子句部分可以省略
注意事项:
- 要控制循环的真值表达式的值来防止死循环
- 通常用真值表达式内的循环变量来控制循环条件
- 通常在循环语句块内改变循环变量来控制循环的次数和变量的走向
break语句
作用:用于循环语句(while,for语句)中,用来终止当前循环语句的执行
说明:
- 当break语句执行后,此循环语句break之后的语句将不再执行
- break语句通常和if语句组成使用
- break语句终止循环时,循环语句的else子句的语句不会被执行
- break语句只能终止当前循环语句的执行,如果有循环嵌套时,不会跳出嵌套的外重循环
- break语句只能用在循环语句(while或for)内部使用
死循环
- 死循环是指条件一直成立的循环
- 死循环通常用break语句来终止循环
- 死循环的else语句永远不会执行
以下是练习:
# 练习1
a=input("请输入一行文字:")
b=input("请输入一行文字:")
c=input("请输入一行文字:")
print('''%20s
%20s
%20s'''% (a,b,c))
# 练习2
def myContract():
contract='''
《合同》
甲方:_%s_ 乙方:_%s_
合同金额:_%d_元
......
日期:_%d_年_%d_月_%d_日
'''
jia=input('请输入甲方姓名:')
yi=input('请输入乙方姓名:')
price=int(input('请输入金额:'))
year=int(input('请输入年:'))
m=int(input('请输入月:'))
d=int(input('请输入日:'))
print(acontract % (jia,yi,price,year,m,d))
myContract()
# 练习3
def myInt():
n=int(input("请输入一个整数:"))
i=0
while i<n:
print(i)
i+=1
myInt()
# 练习4
i=1
while i<=20:
print(i,end=' ')
i+=1
print()
# 练习5
i=1
r=1
# 方法1
while r<=4:
while i<=(r*5):
print(i,end=' ')
i+=1
print()
r+=1
# 方法2
while i<=20:
print(i,end=' ')
if i%5==0:
print()
i+=1
print()
# 练习6
begin=int(input('输入一个开始的整数:'))
end=int(input('输入一个结束的整数:'))
1
while begin<end:
print(begin,end=' ')
begin+=1
print()
# 2
# 方法1
r=begin+5
while begin<end:
while begin<r and begin<end:
print(begin,end=' ')
begin+=1
print()
r+=5
# 方法2
i=begin
while i<end:
print(i,end=' ')
if(i-begin)%5==4:
print()
i+=1
else:
print()
# 练习7
i=10
while i>0:
print(i)
i-=1
# 练习8
begin=float(input('输入一个开始的浮点数:'))
end=float(input('输入一个结束的浮点数:'))
step=float(input('输入每个数的间隔:'))
while begin<end:
print(begin)
begin+=step
# 练习9
x=input('请输入一串字符串')
# 方法1
a=max(x)
print(ord(a),a)
# 方法2
i=0
encode_max=ord(x[0])
while i<len(x):
if ord(x[i])>encode_max:
encode_max=ord(x[i])
i+=1
print('编码值最大的是:',encode_max)
print('这个字符是:',chr(encode_max))
# 练习10
x=int(input('输入一个整数:'))
i=0
while i<x:
j=1
while j<=x :
print(j,end=' ')
j+=1
print()
i+=1
# 练习11
i=1
sum=0
while i<=100:
sum+=i
i+=1
print('和:',sum)
# 练习12
x=int(input('give me a num...'))
i=0
Sn=0
while i<=x:
Sn+=1/(2**i)
i+=1
print(Sn)
# 练习13
n=int(input('输入一个整数:'))
i=1
while i<=n:
print('*'*i)
i+=1
# 练习14
n=int(input('输入一个整数:'))
i=1
while i<=n:
print(' '*(n-i)+'*'*i)
i+=1
# 练习15
n=int(input('输入一个整数:'))
i=n
while i>0:
print(' '*(n-i)+'*'*i)
i-=1
# 练习16
n=int(input('输入一个整数:'))
i=n
while i>0:
print('*'*i)
i-=1