刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

简答题

随机列表问题

随机生成一个长度为 100 的整数列表,其元素范围为 1~100,将该列表以每10 个一行(元素之间以空格分隔)写入一个文本文件("record.txt"),将文本文件("record.txt")中的数字读入一个列表,并按数字的升序输出该列表。

注:enumerate()取出的两个值,一个为数的索引,一个为数的值

from random import randint

lis=[]

for i in range(100):

    lis.append(randint(1,100))

with open("record.txt","")as f:

    str=""

    for i,v in enumerate(lis):

        str=str+"{}".format(v)

        if==0:

            b=(str+"\n")

            str=""

lis_date=[]

with open("record.txt")as f:

    for line in:

        line=line.strip()

        data=line.split()

        for v in data:

            lis_date.append(eval(v))

last_date=(lis_date)

print(last_date)

使用微信搜索喵呜刷题,轻松应对考试!

答案:

①写入模式,即"w"
②i对lis列表的长度取模的结果
③如果i对列表长度取模的结果为0,即每写入十个数字后换行,使用文件对象的write方法
④文件的每一行内容
⑤使用sorted函数对列表进行升序排序

解析:

该题目要求生成一个包含1到100的随机整数列表,并将其写入文本文件,然后再从文本文件中读取数字并排序输出。

  1. 首先,使用for循环生成一个包含1到100的随机整数列表lis。
  2. 然后,使用with语句和文件操作,以写入模式(“w”)打开文件"record.txt"。
  3. 在遍历列表lis时,使用enumerate()函数获取每个数的索引和值。每写入十个数字后,使用文件对象的write方法换行。这里使用了取模运算来判断是否达到每十个数字换行的条件。
  4. 接下来,再次使用with语句和文件操作打开"record.txt",逐行读取文件内容。使用strip()方法去除行首行尾的空白字符,然后使用split()方法将每行内容按空格分割成一个列表。
  5. 将分割后的每个数字字符串转换为整数并添加到新的列表lis_date中。
  6. 最后,使用sorted函数对列表lis_date进行升序排序,并输出排序后的最后一个数字。这里使用的是Python的内置sorted函数,它可以对列表进行排序并返回一个新的排序后的列表。由于题目要求输出升序排列后的最后一个数字,因此使用list的最后一个元素即可。
创作类型:
原创

本文链接:随机列表问题 随机生成一个长度为 100 的整数列表,其元素范围为 1~100,将该列表以每10 个

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share