例1. 输出字符串s,格式要求:宽度30字符,星号字符*填充,居中对齐。 如果字符串超过30位,则全部输出。
s = input("请输入一个字符串:")print("{:*^30}".format(s)){冒号+填充符+对齐方式+宽度}对齐方式^居中 右对齐例2:输出n,格式:宽度30,填充符@,右对齐,带千位分隔符
n = eval(input("请输入正整数:"))print("{:@>30,}".format(n))格式 :+填充符+对齐方式+width+千分位符 Unicode例3. 输入9800-9811之间的正整数n,作为Unicode编码,把n-1,n,n+1三个unicode编码对应字符按照如下格式输出: 宽度11字符,填充符+,居中
n = eval(input("请输入一个数字:"))print("{:+^11}".format(chr(n-1)+chr(n)+chr(n+1)))注意点 1. 田中宽! 2. chr(i)函数返回i的Unicode 3. Unicode是字符串类型,可以用+连接例4. 输入1-26的数字出现对应索引的英文字母 如: 输入1,输出大写字母A
s = eval(input("请输入一个数字:"))ls = [0]for i in range(65,91):ls.append(chr(i))print("输出大写字母:{}".format(ls[s]))注意点 1. 1-A,2-B,所以ls一开始需要填充0位置 2. chr()中65-90对应A-Z 精度控制例5. 输入一个十进制数转换成二进制数
s = input("请输入一个十进制数:")num = int(s)print("转换成二进制数是:{:b}".format(num))注意点 1. input()返回的是字符串,需要用int()变成数字 2. {:.2f}保留两位小数 {:b}转换二进制binary system {:d}转换十进制decimalism例6. 输入直角三角形两条直角边长度,计算三角形面积(保留一位小数)
a = float(input("输入三角形第一条直角边长:"))b = float(input("输入三角形第二条直角边长:"))area=1/2*a*bprint("直角三角形的面积为:{:.1f}".format(area))例7. 将十进制整数转化成二进制数,八进制数,十六进制(大写)数。
num = eval(input("输入数字:"))print("对应的二进制数:{0:b}\n八进制数:{0:o}\n十六进制(大写)数:{0:X}".format(num))注意点 1. 这里num只有一个,但是{}有三个 所以要加位置0,代表num 循环段例1. 根据斐波拉契数列,输出不大于50的数列元素
a, b = 0, 1while a=4 and n=10:cost=int(n*150*0.7) print("总额为:",cost)注意点 1. 判断格式中是双== 2. 最后一个elif不可以用else 因为还是有判断规则大于10 3. eval()指把字符串换成可以计算的格式 4. 利用int()函数取整数例3:计算a,b两列表对应元素累计相乘之和
a = [11,3,8]b = eval(input()) #例如:[4,5,2]s=0for i in range(3):s += a[i]*b[i]print(s)例4. 判断闰年:能被4整除但不能被100整除,但是世纪闰年是被400整除。
写了一个算法效率很低但是很清晰的方法 def judge_year(year):if year % 4 ==0:if year % 100 == 0:if year % 400 == 0:print("{}是闰年".format(year))else:print("{}不是闰年".format(year))else:print("{}是闰年".format(year))else:print("{}不是闰年".format(year))year = eval(input("请输入年份:"))judge_year(year) 第二种就是善用逻辑语,效率提高 def judge_year(year):if year % 4 ==0 and year % 100!=0 or year %400 == 0:print(year,"是闰年")else:print(year,"不是闰年")year = eval(input("请输入年份:"))judge_year(year)例5. 输入一个水果名,判断是否在列表lis中
fruit = input('输入水果:')lis = ['苹果','哈密瓜','橘子','猕猴桃','杨梅','西瓜']if fruit in lis:print(fruit+"在列表lis中")else:print(fruit+"不在列表lis中") 计数器例6. 循环输出1-50之间的奇数
count = 0while count 0且不等于1,真数大于0,且输入为实数,否则抛出相应的异常 import mathtry:a = eval(input('请输入底数:'))b = eval(input('请输入真数:'))c = math.log(b,a)except ValueError:if a0:print("底数不能小于等于0")elif a>0 and b