m0_64542878 2022-11-03 20:15 采纳率: 85.7%
浏览 95
已结题

python数据处理类问题

1.编写函数,可以接收任意多整数型成绩,返回:最高分,最低分,平均数分,总分,90分以上个数,60分以下人数。在主程序中调用并测试该函数。
2.在名为code.py文件内,编写名为名为codeGenerate(n,sep)的函数,实现生成并返回1个n位、分隔符为sep的VIP会员激活码,例如:“XXXX-XXXX-XXXX-XXXX”,X的取值范围是[a…z,A…Z,0-9],n位只包含X的个数,sep为短横线。在sy04.py文件中用import……或from……import……方法导入并调用上述函数功能,分别生成1个16位、分隔符为@,3个类32个、分隔符为$,5个64位、分隔符为- 的激活码,输出效果如下图。【参考代码行数:10行】

img

  • 写回答

1条回答 默认 最新

  • Rattenking Python领域优质创作者 2022-11-04 10:49
    关注

    code.py

    
    import numpy as np
    def codeGenerate(n,sep):
      key_words = list("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789")
      words = ''.join(np.random.choice(key_words, n))
      trems = []
      every_str = ""
      for val in range(n):
        every_str += words[val]
        if val%4 == 3:
          trems.append(every_str)
          every_str = ""
      return f'{sep}'.join(trems)
    
    if __name__ == "__main__":
      res = codeGenerate(64,'@')
      print(res)
    

    sy04.py

    
    import code
    
    tasks_str = input("输入任务:")
    # 去掉开始和结束的()
    tasks_str = tasks_str.strip("()")
    # 以),(分割任务
    tasks = tasks_str.split("),(")
    
    # 循环完成任务
    for task in tasks:
      [task_num, task_n, task_sep] = task.split(",")
      print(task_num, task_n, task_sep)
      for _ in range(int(task_num)):
        res = code.codeGenerate(int(task_n),task_sep)
        print(res)
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月12日
  • 已采纳回答 11月4日
  • 修改了问题 11月3日
  • 创建了问题 11月3日