python日常刷题(一)

2024-03-23 1057阅读

前言:本文记录2024年3月11日至2024年3月19日牛客网所做的基础题目(错题本):

🎬个人简介:努力学习ing

📋本专栏:python日常刷题

🎀CSDN主页:愚润求学


文章目录

  • 错题集
    • 1,密码游戏
    • 2,input返回字符
    • 3,除法(/、//、%)
    • 4,if也可判断空列表
    • 5,else和for的特殊交叉
    • 6,注意输入次数
    • 7,计算均绩(不使用字典)
    • 8,换行
    • 9,列表解析(?)

      错题集

      1,密码游戏

      python日常刷题(一)

      我写的:

      num =  input()
      b = []
      for i in num:
          x = (int(i)+3)%9
          b.append(x)
      b[0],b[2] = b[2],b[0]
      b[1],b[3] = b[3],b[1]
      for i in b:
          print(i, end='')
      

      I get it:

      1,将数据通过append依次存入列表

      2,两数交换(a,b = b,a)

      2,input返回字符

      stack = [1, 2, 3, 4]
      stack.append(input()) # 输入 1 (返回了'1',变成了:append('1'))
      print(stack) # 输出 [1, 2, 3, 4, '1'] 
      

      要输出[1,2,3,4,1]:

      stack.append(int(input()))
      

      注意input()以后要转为int,如下要实现:if 0

      如果不用int() ,则返回的是字符“0”

      if int(input()):
          print("hello world!")
      else:
          print("Erros!")
      

      3,除法(/、//、%)

      注意:

      1,在python中两个整数相除/会保留小数部分(这点与C语言不同)

      2,//代表的是整除(抛弃小数)

      x = int(input()) # 输入5
      y = int(input()) # 输入2
      print(f"{x/y} ")  # 输出:2.5
      print(f"{x%y}")   # 输出:1
      print(f"{x//y}")  # 输出:2
      print((4 + 8) / 2)  # 输出:6.0
      

      4,if也可判断空列表

      空列表在这里相当于None

      my_list = []
      if my_list:
          print("my_list is not empty!")
      else:
          print("my_list is empty!")
      

      5,else和for的特殊交叉

      一般来说,else和for属于不同的层次,但是:

      它们在循环中也有特殊的交互。在 for 循环中,else 子句可以用于指定循环正常结束时的代码块,即当循环没有被 break 语句中断时执行的代码。这被称为“else 子句”。

      例如:

      for i in range(5):
          if i == 3:
              break
          print(i)
      else:
          print("循环正常结束")
      

      在上面的示例中,当 i 的值达到 3 时,break 语句会中断循环,因此 else 子句将不会执行。

      但,如果循环正常结束(即完成了所有迭代),else 子句将会执行。

      错题:

      如下,判断new的元素在不在current里面:

      思路:用for依次拿到new_users的每一个元素——再依次拿current_users的元素与之比较——当相等的时候会进入if,如果都不相等,则本次for正常执行完,于是执行下面的else语句

      current_users = ['Niuniu','Niumei','GURR','LOLO']
      new_users = ['GurR','Niu Ke Le','LoLo','Tuo Rui Chi']
      for i in new_users:
          for j in current_users:
              if i.lower() == j.lower():
                  print(f"The user name {i} has already been registered! Please change it and try again!")
                  break
          else:
                  print(f"Congratulations, the user name {i} is available!")
      

      6,注意输入次数

      python日常刷题(一)

      一开始写的(错误的):

      if input() == "pizza":
          print(10)
      elif input() == "rice":
          print(2)
      elif input() == "yogurt":
          print(5)
      else:
          print(8)
      

      这里先输入一个值,先判断是否等于pizza,如果不等于就会执行下一个elif语句:

      但是,下一个elif语句又会让你再输入一个值

      修改后:

      a = input()
      if a == "pizza":
          print(10)
      elif a == "rice":
          print(2)
      elif a == "yogurt":
          print(5)
      else:
          print(8)
      

      7,计算均绩(不使用字典)

      python日常刷题(一)

      使用两个列表分别存放要记录的值

      level = []
      score = []
      new_level ,new_score,total_score = 0,0,0
      while 1:
          new_level = input()
          if new_level == "False":  
          # 注意这里一定是和字符串“False”比较,因为input返回的是字符串(“False”),而不是布尔值
              break
          else:
              level.append(new_level)
              new_score = float(input())
              score.append(new_score)
              total_score +=new_score
      sum = 0
      for i in range(len(score)):
          if level[i] == "A":
              sum += score[i]*4.0
          elif level[i] == "B":
              sum += score[i]*3.0
          elif level[i] == "C":
              sum += score[i]*2.0
          elif level[i] == "D":
              sum += score[i]*1.0
          else:
              sum += 0
      print(f"{sum/total_score:.2f}")
      

      8,换行

      要求换行:

      print() # print("\n")是换两行(因为print的默认参数:结束后会换行)
      

      9,列表解析(?)

      (还不是很理解)

      python日常刷题(一)

      numbers_list = [i for i in range(10)]
      print(numbers_list)
      

      🌈我的分享也就到此结束啦🌈

      要是我的分享也能对你的学习起到帮助,那简直是太酷啦!

      若有不足,还请大家多多指正,我们一起学习交流!

      📢公主,王子:点赞👍→收藏⭐→关注🔍

      感谢大家的观看和支持!祝大家都能得偿所愿,天天开心!!!

VPS购买请点击我

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

目录[+]