实验三

1.

x = list(range(10))
print('整数输出1: ', end = '')
for i in x:
   print(i, end=' ')
print('\n整数输出2: ', end = '')
for i in x:
   print(f'{i:02d}', end = '-')
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)]
print('-'.join(y1))
print('字符输出2: ', end = '')
y2 = [str(i).zfill(2) for i in range(10)]
print('-'.join(y2))

  

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)]
for i in lower_alpha:
   print(i, end = ' ')
print('\n字符列表2: ')
upper_alpha = [i.upper() for i in lower_alpha]
for i in upper_alpha:
   print(i, end = ' ')

  

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

  

import random
print('用集合存储随机整数: ')
while True:
   s = {random.randint(1,100) for i in range(5)}
   print(s)
   if len(s) < 5:
    break

  

实验结论:

 random.randint(1, 100)生成的随机整数范围是1~100,包括100。但是利用range(1, 100)生成的有序序列范围是1~99,不包括100。而s = {random.randint(1, 100) for i in range(5)}生成集合,len(s)不一定是5,因为随机生成的整数可能重复,但是列表中不存在重复元素,因此会出现 len(s)不是5的情况。

 

 

 2.

a = 0
b = 1
c = a + b
s = [0,1,c]
while c < 500:
  a,c = c,a
  c = a + b
  s.append(c)
  b, c = c, b
  c = a + b
  s.append(c)
c = 0
for i in s:
    print(f'{i:>8}',end = '')
    c =c + 1
    if c % 5 == 0:
        print(end = '\n')

  

3.

import random
day = random.randint(1,31)
x = input('猜猜2021年5月哪一天是你的幸运日\n你有三次机会,猜吧:')
if x < str(day):
    print('你的幸运日还早呢')
    y = input('再猜再猜:')
    if y < str(day):
      print('你的幸运日还早呢')
      r = input('再猜再猜:')
      if r < str(day):
          print('你的幸运日还早呢')
      if r > str(day):
          print('你的幸运日晚了呢')
      if r == str(day):
          print('恭喜你,猜中了')
    elif  y > str(day):
       print('你的幸运日晚了呢')
       s = input('再猜再猜:')
       if s < str(day):
           print('你的幸运日还早呢')
       if s > str(day):
           print('你的幸运日晚了呢')
       if s == str(day):
           print('恭喜你,猜中了')
    elif y == str(day):
        print('恭喜你,猜中了')
        exit()
if x > str(day):
    print('你的幸运日晚了呢')
    z = input('再猜再猜;')
    if z < str(day):
      print('你的幸运日还早呢')
      t = input('再猜再猜:')
      if t < str(day):
          print('你的幸运日还早呢')
      if t > str(day):
          print('你的幸运日晚了呢')
      if t == str(day):
          print('恭喜你,猜中了')
    elif z > str(day):
        print('你的幸运日晚了呢')
        v = input('再猜再猜:')
        if v < str(day):
            print('你的幸运日还早呢')
        if v > str(day):
            print('你的幸运日晚了呢')
        if v == str(day):
            print('恭喜你,猜中了')
    elif z == str(day):
        print('恭喜你,猜中了')
        exit()
if x == str(day):
      print('恭喜你,猜中了')
      exit()
print(f'次数用完了,2021年5月你的幸运日是{day}号')

  

4.

x = input('输入一个整数:')
y = input('输入你想要变换的进制:')
a = [0,1,2,3,4,5,6,7,8,9,'A','B','C','D','F']
b = []
while True:
    s = int(x) // int(y)
    t = int(x) % int(y)
    b = b + [t]
    if s==0:
        break
    x = s
for i in b[::-1]:
    print(a[i],end ='')

  

posted @ 2021-04-18 11:35  谢尔比  阅读(69)  评论(0)    收藏  举报