实验三
#一、实验任务1 #基础操作练习1:格式控制、列表解析、类型转换 x = list(range(10)) print('整数输出1:',end = '') for i in x : print(i,end=' ') print('整数输出2:',end='') for i in x : print(f'{i:02d}',end='-')#指定每个整数输出宽度占两列,不足两列,左边补0 print('\n整数输出3:',end='') for i in x[:-1]: print(f'{i:02d}',end='-') print(f'{x[-1]:02d}') print('\n字符输出1:',end='') y1=[str(i) for i in range(10)]# 函数str()用于把其他类型对象转化成字符串对象 print('-'.join(y1)) print('字符输出2:',end='') y2=[str(i).zfill(2) for i in range(10)]# 方法.zfill()用于对字符串进行格式化,指定宽度为2列,不足左边补0 print('-'.join(y2)) #基础操作练习2:range对象、列表解析、类型转换、字符串方法 print('整数列表:') x=list(range(97,97+26)) for i in x: print(i,end = ' ') print('\n字符列表1:') lower_alpha = [chr(i) for i in range(97,97+26)] # 函数chr()返回整数对应的字符串形式 for i in lower_alpha: print(i,end=' ') print('\n字符列表2:') upper_alpha = [i.upper() for i in lower_alpha]# 方法.upper()用于吧小写字母转换成大写 for i in upper_alpha: print(i,end=' ') #基础操作练习3:标准库random,string import random import string print('用列表存储随机整数:') ls = [random.randint(1,100) for i in range(5)] print(ls) print('\n用集合存储随机整数:') s={random.randint(1,100) for i in range(5)} print(s) print('\n\n字母串:',end='') alpha = string.ascii_letters print(alpha) print(type(alpha)) print('\n数字串:',end='') digits = string.digits print(digits) print(type(digits)) #测试集合解析形式s={random.randint(1,100) for i in range(5)}生成集合,len(s)一定是5吗? import random print('用集合储存随机整数:') while True: s={random.randint(1,100) for i in range(5)} print(s) if len(s) < 5: break
运行结果如下:

s=[0,1] a=0 b=1 i=1 j=0 while b<=1000: a=b b=b+s[i] i+=1 s.append(a) for x in s: print('{:>3d}'.format(x),end=' ') j+=1 if j % 5 == 0: print('')
运行结果如下:

import random s=random.randint(1,32) i=1 x=eval(input('''猜猜2021年5月哪一天会是你的lucky day: 你有三次机会,猜吧(1~31):''')) if x == i: print('猜中了') while i < 3: if x == s: print('猜中了') elif x<s: print('猜早啦,你的lucky day还早呢') x = eval(input('再猜:')) else: print('猜晚啦,你的lucky day在前面,前面') x = eval(input('再猜:')) i += 1 else: print('次数用完啦') print('2021年5月你的lucky day是',s,'号')
运行结果如下:

x,n=eval(input('输入十进制整数x和想要转换的进制n(2或8或16):')) if n == 2: print(x,'的',n,'进制是:',bin(x)[2:]) if n == 8: print(x,'的',n,'进制是:',oct(x)[2:]) if n == 16: print(x,'的',n,'进制是:',hex(x)[2:])
运行结果如下:


浙公网安备 33010602011771号