一年的五分之四 2023-05-28 22:01 采纳率: 87.5%
浏览 78
已结题

python 6x6游戏加登录、记录系统

import random
import time
def initialize_6x6():#创建一个6行的矩阵,其中第一行有6x5x4x3x2x1=720中结果,其余行数为第一行的结果
    row0=[1,2,3,4,5,6]
    random.shuffle(row0) #随机打乱选择其中一种
    row1=row0[3:6]+row0[0:3]
    row2=[row0[2],row0[0],row0[1],row0[5],row0[3],row0[4]]
    row3=row2[3:6]+row2[0:3]
    row4=row3[5],row3[3],row3[4],row3[2],row3[0],row3[1]
    row5=row4[3:6]+row4[0:3]
    return [row0,row1,row2,row3,row4,row5]

def hanghuanhang(board):
    top=board[:2] #第12mid=board[2:4]#第34bottom=board[4:]#第56random.shuffle(top)#其中第一行与第二行换 见p399图
    random.shuffle(mid)#其中第3行与第4行换 见p399图
    random.shuffle(bottom)#其中第5行与第6行换 见p399图
    return top+mid+bottom
def hengshuhuan(board):#由于行和列不好换 需要创建一个行和列的置换函数 见p388
    size=len(board)
    k=[]
    for _ in range(size):
        k.append([])
    for row in board:
         for g in range(size):
            k[g].append(row[g])
    return k
def shushuhuan(borad):#由于列无法直接置换所以需要把列换到行进行列与列的置换
    shu1_3=borad[0:3]
    shu4_6=borad[3:6]
    random.shuffle(shu1_3)
    random.shuffle(shu4_6)
    return shu1_3+shu4_6
#下面进行与行、列与列的置换,由于第一行出现的情况我们已经知道有720种结果
#但每行与行之间需要换和每列与列之间要换 还存在2**9即2的9次方的结果为512(见图p399)
#所以总可能数为 720x512=368640种
def creation_6x6():
    board=initialize_6x6()
    board=hanghuanhang(board)#行换行 包含 上 中 下三个区域 p399
    board=hengshuhuan(board)#行换列
    board=shushuhuan(board)#由于列无法直接置换所以需要把列换到行进行列与列的置换
    board=hengshuhuan(board)#列在行的方向上换完后回到列
    return board

def copy_board(board):#创建一个复制函数,后面方便对照玩家输入后的答案
    j=[]
    for row in board:
        j.append(row[:])
    return j
def get_messege(messege,a,b):#获取信息函数在总函数里用到
    messeges=input(messege)
    while not(messeges.isdigit() and a<=int(messeges)<=b):
        messeges=input(messege)
    return int(messeges)

def get_level():
    print("游戏规则:等级一为填6个空,等级二为填8个空,等级三为填10个空,等级一在1分钟内完成给一个金币,超过一分钟减一个,等级二在两分钟内完成给一个金币,超过两分钟减一个,等级三在三分钟内完成给一个金币,超过三分钟减一个,等级一在30s内完成多给一个金币,等级二60s内完成多给一个金币,等级二90s内完成多给一个金币")
    level=input("一共1~3个等级 请输入你想进行的等级:")
    while level not in("1","2","3"):
        level=input("一共1~3个等级 请输入你想进行的等级")
    if level=="1":
        return 6
    elif level=="2":
        return 8
    else:
        return 10
def make_holes(copy_board,get_level):#制作"空"函数但空的部分暂且按0来记号
    while get_level >0:
        i=random.randint(0,3)
        j=random.randint(0,3)
        if copy_board[i][j]!=0:
            copy_board[i][j]=0
            get_level-=1
    return copy_board
def show_board(copy_board):#将"0"记号的部分 转化为" . "并且打印出来
    for row in copy_board:
        for entry in row:
            if entry==0:
                print(".",end=" ")
            else:
                print(entry,end=" ")
        print()
def load_members():
    file=open("/Users/wangzhehan/Desktop/aa.csv","r")
    members={}
    for line in file:
        name,passwd,tries,chips=line.strip("\n").split(",")
        members[name]=(passwd,int(tries),int(chips))
    file.close()
    return members

def login(members):
    user_member=input("输入你的名字:")
    user_passwd=input("输入你的密码:")
    if user_member in members.keys():
        if user_passwd in members[user_member][0]:
            tries=members[user_member][1]
            chips=members[user_member][2]
            print("你已经玩了",tries,"游戏了。")
            if chips >=0:
                print("你现在还有",chips,"chips")
            else:
                print("你欠",chips,"chips")
            return user_member,tries,chips,members
        else:
            return login(members)
    else:
        members[user_member]=(user_passwd,0,0)
        return user_member,0,0,members
def store_members(members):
        file=open("/Users/wangzhehan/Desktop/aa.csv","w")
        names=members.keys()
        for name in  names:
            passwd,tries,chips=members[name]
            line=name+','+passwd+','+str(tries)+','+\
                str(chips)+"\n"
            file.write(line)
        file.close()


def soduk_6x6():#执行总函数
    members= load_members()
    user_name,passwd,tries,chips= login(members)
    more = "y"
    while more == "y":
        solution=creation_6x6()
        puzzle_board=copy_board(solution)
        not_holes=get_level()
        puzzle_board=make_holes(puzzle_board,not_holes)
        start = time.perf_counter()
        show_board(puzzle_board)
        while not_holes>0:
            i = get_messege("行数#", 1, 6) - 1
            j = get_messege("列数#", 1, 6) - 1
            if puzzle_board[i][j]!=0:
                print("这里已经有数了重新输入")
                continue
            n=get_messege("数字#:",1,6)
            if n ==solution[i][j]:
                puzzle_board[i][j]=solution[i][j]
                show_board(puzzle_board)
                not_holes-=1
            else:
                print(n,"数字有误重新输入")

        end=time.perf_counter()
        times= round(end - start, 0)
        print("共用"+str(times)+"秒")
        tries+=1
        if not_holes==6:
            if times <=30:
                chips+=2
            elif 30 < times < 60:
                chips+=1
            elif times >60:
                chips-=1
        elif not_holes==8:
            if times <=60:
                chips+=2
            elif 60< times <120:
                chips+=1
            else:chips-=1
        else:
            if times <= 90:
                chips+=2
            elif 90 < times <180:
                chips+=1
            else:chips-=1
        return chips

        more = input("再来一次的话请输入y,停止输入任意键")
    members[user_name]=(str(passwd),int(tries),int(chips))
    store_members(members)



soduk_6x6()

python 6x6的数独游戏 , 如要求写的一样 print("游戏规则:等级一为填6个空,等级二为填8个空,等级三为填10个空,等级一在1分钟内完成给一个金币,超过一分钟减一个,等级二在两分钟内完成给一个金币,超过两分钟减一个,等级三在三分钟内完成给一个金币,超过三分钟减一个,等级一在30s内完成多给一个金币,等级二60s内完成多给一个金币,等级二90s内完成多给一个金币"),由于本人太笨 改了这那不行改了那这不行,希望高人来指导一下。要求是不改变我整体框架下 稍稍改动就能使代码跑起来满足我的要求 谢谢!!

  • 写回答

5条回答 默认 最新

  • Dick_不周 2023-05-29 13:49
    关注

    。。目前解决了本地文件的问题,

    然后发现~

    img

    通过修改login()函数的返回值和接受变量如下:

    img

    接受变量更改如下:

    img

    继续运行结果如下

    img

    更改后又遇见问题:

    img

    继续更改后:

    存储文件变更

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • 阳光宅男xxb 2023-05-29 09:22
    关注

    增加一个登陆方法实现登陆功能,在游戏开始前调用该登陆方法,如果登陆成功则开始游戏,如果登陆失败则退出游戏。代码如下:

    def login():
        print('您还未登陆!')
        select = 0
        while True:
            select = int(input('1 使用已有账号登陆,2 注册新账号,3 退出:'))
            if select == 1:
                name = input('请输入登陆账号:')
                password = input('请输入登陆密码:')
                check = False
                with open('accounts.txt') as file:
                    lines =file.readlines()
                    for line in lines:
                        accounts = line.split()
                        if name == accounts[0] and password == accounts[1]:
                            check = True
                            break
    
                if check:
                    print('登陆成功!')
                    break
                else:
                    print('账号或密码错误!')
    
            elif select == 2:
                name = input('请输入新的账号:')
                password = input('请输入新账号的密码:')
                check = False
                with open('accounts.txt') as file:
                    lines = file.readlines()
                    for line in lines:
                        accounts = line.split()
                        if name == accounts[0]:
                            check = True
                            break
    
                if check:
                    print('该账号已存在!')
                else:
                    with open('accounts.txt','a') as file:
                        file.write(name+' '+password)
                    print('注册成功!')
                    break
            else:
                break
    
        if select!=3:
            return True
        else:
            return False
    
    
    

    以上代码包含注册功能,账号密码保存在一个叫account.txt文件中,格式如下:

    img


    分别为账号和密码。

    其次,实现记录系统,增加一个记录类LogMessage ,将用户的操作记录存放在文件中,代码如下:

    import  os
    
    class LogMessage: #记录类
        def __init__(self,user,msg,s_time):
            self.user = user
            self.msg = msg
            self.s_time = s_time
    
        def log(self):
            if not os.path.exists(self.user):
                os.makedirs(self.user)
            with open(self.user+'\\logs.txt','a+',encoding='utf-8') as file:
                file.write(self.s_time+':'+self.msg+"\n")
    
    logMsg = LogMessage('xxb','登陆游戏','2023-06-01')
    logMsg.log()
    
    

    使用用户的用户名作为一个文件夹,其操作记录存放咋该文件夹下的logs.txt文件中,

    评论 编辑记录
  • 鱼弦 全栈领域创作新星创作者 2023-05-29 09:53
    关注

    下面是修改后的代码,实现了游戏规则的展示和金币的增减:

    import random
    import time
    
    def initialize_6x6():
    row0 = [1, 2, 3, 4, 5, 6]
    random.shuffle(row0)
    row1 = row0[3:6] + row0[0:3]
    row2 = [row0[2], row0[0], row0[1], row0[5], row0[3], row0[4]]
    row3 = row2[3:6] + row2[0:3]
    row4 = [row3[5], row3[3], row3[4], row3[2], row3[0], row3[1]]
    row5 = row4[3:6] + row4[0:3]
    return [row0, row1, row2, row3, row4, row5]
    
    def hanghuanhang(board):
    top = board[:2]
    mid = board[2:4]
    bottom = board[4:]
    random.shuffle(top)
    random.shuffle(mid)
    random.shuffle(bottom)
    return top + mid + bottom
    
    def hengshuhuan(board):
    size = len(board)
    k = [[] for _ in range(size)]
    for row in board:
    for g in range(size):
    k[g].append(row[g])
    return k
    
    def shushuhuan(board):
    shu1_3 = board[0:3]
    shu4_6 = board[3:6]
    random.shuffle(shu1_3)
    random.shuffle(shu4_6)
    return shu1_3 + shu4_6
    
    def creation_6x6():
    board = initialize_6x6()
    board = hanghuanhang(board)
    board = hengshuhuan(board)
    board = shushuhuan(board)
    board = hengshuhuan(board)
    return board
    
    def copy_board(board):
    copy = []
    for row in board:
    copy.append(row[:])
    return copy
    
    def get_message(message, a, b):
    while True:
    try:
    value = int(input(message))
    if a <= value <= b:
    return value
    except ValueError:
    pass
    
    def get_level():
    print("游戏规则:等级一为填6个空,等级二为填8个空,等级三为填10个空")
    print("等级一在30s内完成多给一个金币,超过30s减一个")
    print("等级二在60s内完成多给一个金币,超过60s减一个")
    print("等级三在90s内完成多给一个金币,超过90s减一个")
    level = get_message("请选择游戏等级(1/2/3):", 1, 3)
    return level
    
    def get_coordinate(board):
    while True:
    try:
    x = int(input("请输入行号(1-6):")) - 1
    y = int(input("请输入列号(1-6):")) - 1
    if 0 <= x <= 5 and 0 <= y <= 5 and board[x][y] == 0:
    return x, y
    except ValueError:
    pass
    print("无效的坐标,请重新输入。")
    
    def play_6x6():
    board = creation_6x6()
    copy = copy_board(board)
    start_time = time.time()
    level = get_level()
    if level == 1:
    blanks = 6
    time_limit = 30
    elif level == 2:
    blanks = 8
    time_limit = 60
    else:
    blanks = 10
    time_limit = 90
    gold = 0
    while blanks > 0:
    print("当前金币数:", gold)
    print("剩余空格数:", blanks)
    在最后一行代码下添加以下代码,实现了填数字和金币的增减:
    print("当前数独:")
            print_board(board)
            x, y = get_coordinate(board)
            value = get_message("请输入该位置的数字(1-6):", 1, 6)
            board[x][y] = value
            blanks -= 1
            if blanks == 0:
                if board == copy:
                    print("恭喜你,完成数独!")
                    if time.time() - start_time <= time_limit:
                        gold += 1
                        print("时间内完成,获得一枚金币!")
                    else:
                        gold -= 1
                        print("超时完成,扣除一枚金币。")
                else:
                    print("很遗憾,填写错误。")
                    gold -= 1
                    print("扣除一枚金币。")
    
    评论
  • CSDN-Ada助手 CSDN-AI 官方账号 2023-06-03 19:19
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:
    • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/7641969
    • 除此之外, 这篇博客: python小白自学基础知识(二)附加(人狗大战游戏)中的 根据函数和面向对象(类)的知识,概括为一个总的例子(该例子我在其他的文章中见过),作为上课的内容,老师要求实现人狗大战游戏代码编写,内容中包含:人初始化的金钱额度,金钱用于买枪,枪对狗的伤害,以及狗的血量,最后是人在多少次把狗打死(其中没有涉及到人打狗的同时,狗也在咬人,但是却定义了狗对人的伤害,有兴趣的朋友可以继续把游戏做下去) 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

      人狗大战游戏

      #创建一个类(该类的属性会为后面的类继承调用)
      class lable:
          def __init__(self, name, aggr, hp):  #类属性
              self.name = name
              self.aggr = aggr
              self.hp = hp
      
      class dog(lable):  #创建狗的类,并且继承lable(父类)的属性
          def __init__(self, name, aggr, hp, kind):
              lable.__init__(self, name, aggr, hp)
              self.kind = kind
      	#定义狗的攻击方法
          def attack(self, person):
          	#人的血等于人当前的血量减去狗的攻击力
              person.hp -= self.aggr
      
      class person(lable): #创建人的类,同样继承lable(父类)的属性
          def __init__(self, name, aggr, hp, sex):
              lable.__init__(self, name, aggr, hp)
              self.sex = sex
              #初始化人的钱为0
              self.money = 0
      	#定义人的攻击方法,参数对象是狗
          def person_attack(self, dog):
          	#狗的血量等于狗当前的血量减去人的攻击力
              dog.hp -= self.aggr
      	#定义人买枪的方法
          def person_gun(self, gun):  
              if self.money >= gun.g_price:
              	#如果钱够就买枪
                  self.money -= gun.g_price
                  self.gun = gun
                  #枪的攻击力赋值与人的攻击力
                  self.aggr = gun.g_aggr
              else:
                  print('余额不足,请充值金额打狗!')
      
      class gun:  #创建gun枪的类
      	#类属性 记录子弹数量,初始化为0
          num_bullet = 0
          def __init__(self, name, aggr, zds, price):
              self.g_name = name
              self.g_aggr = aggr
              self.g_zds = zds
              self.g_price = price
       	def hand_w(self,dog):
       	#定义人开枪的方法
       		while self.g_zds > 0:#保证子弹数一直是正数
       			if dog.hp > 0:
       				#人用枪打狗,伤害为枪伤害的二倍
       				dog.hp -= self.g_aggr * 2
           			self.g_zds -= 1
                      gun.num_bullet += 1
                      print('正在使用武器攻击(伤害为{}的二倍)!'.format(self.g_aggr))
                      print('当前{}的血条为{}'.format(dog.name,dog.hp))
                  else:  # 防止程序陷入死循环
                      break
      #创建实例对象
      zangao = dog('zangao', 100, 200, '咬人')
      tom = person('tom', 50, 10, '打狗')
      m4a1 = gun('m4-a1', 20, 3, 500)
      tom.money += 1000
      #假想藏獒不攻击人类,只有人类用枪打狗的过程
      # 构造一个循环体,当[zangao]的hp<=0时,退出循环
      # 固定子弹数量
      bullet_full = m4a1.g_zds
      while zangao.hp > 0:
          # 使用gun攻击
          # 判断tom是否还有钱购买枪攻击zangao,如果没有终止循环
          while tom.money >= m4a1.g_price:
              # 购买武器
              tom.person_gun(m4a1)
              # 我们需要重置一下子弹的数量
              m4a1.g_zds = 3
              # 使用武器攻击(hand_w方法自带判断,这里不用加判断了)
              m4a1.hand_w(zangao)
              
      #输出消耗打狗的总子弹数
      print('使用子弹数量为[%d]' % gun.num_bullet)
      

      (这个小例子重点在掌握面向对象的继承,还有定义函数的方法,以及一些逻辑关系,程序里没有实现让狗攻击人,然后人在攻击狗,完全就是单纯的人打狗。至于函数内定义的狗的攻击力,可以作为是为了学习面相对象的继承。一起加油呀!)

    • 以下回答来自chatgpt:

      我可以给出一些优化建议和代码示例:

      1. 使用面向对象的思想,封装游戏的相关信息和操作,方便可维护性和扩展性。
      class Sudoku:
          def __init__(self, level):
              # 初始化游戏信息
              self.level = level
              self.size = 6
              self.grid_size = 2
              self.max_time = 60  # 单位秒
              self.gold_reward = 1
              self.silver_reward = 0
              self.bronze_reward = -1
      
              # 生成一个完整的数独
              self.grid = generate_full_sudoku(self.size, self.grid_size)
      
              # 根据难度等级随机隐藏一些数
              cnt = get_hidden_cnt(self.level, self.size)
              self.puzzle = generate_puzzle(self.grid, cnt)
      
          def start_game(self):
              # 开始游戏,计时并记录成绩
              start_time = time.time()
              answer = input('请输入{}x{}数独的解:'.format(self.size, self.size))
              end_time = time.time()
              duration = end_time - start_time
              score, reward = self.calculate_score(duration)
              self.save_game(score, reward)
              return score, reward
      
          def calculate_score(self, duration):
              # 根据完成时间和难度等级计算得分和奖励金币数量
              if duration <= self.max_time * 0.5:
                  score = 3
                  reward = self.gold_reward
              elif duration <= self.max_time * 0.8:
                  score = 2
                  reward = self.silver_reward
              elif duration <= self.max_time:
                  score = 1
                  reward = self.bronze_reward
              else:
                  score = 0
                  reward = self.bronze_reward
              return score, reward
      
          def save_game(self, score, reward):
              # 记录游戏成绩和奖励
              # 可以使用数据库、文件、网络等方式保存
              pass
      
      def generate_full_sudoku(size, grid_size):
          # 生成一个完整的数独
          pass
      
      def get_hidden_cnt(level, size):
          # 根据难度级别和数独大小计算需要隐藏的数的数量
          pass
      
      def generate_puzzle(grid, cnt):
          # 根据需要隐藏的数的数量随机隐藏一些数
          pass
      
      1. 使用模块化的方法,将不同的功能封装成不同的模块,方便重用和维护。比如可以将登录和游戏记录系统分别封装成两个独立的模块。
      import login
      import game_record
      
      # 用户登录
      user = login.login()
      
      # 开始游戏
      game = Sudoku(level)
      score, reward = game.start_game()
      
      # 记录游戏成绩和奖励
      game_record.save(user, score, reward)
      
      1. 使用异常处理机制,增加程序的健壮性。比如可以处理输入错误、时间超时、保存错误等异常。
      try:
          # 开始游戏
          game = Sudoku(level)
          score, reward = game.start_game()
      except TimeoutError:
          print('时间超时,请重新开始游戏!')
          # 记录游戏成绩和奖励
          game_record.save(user, 0, 0)
      except ValueError:
          print('输入错误,请重新开始游戏!')
          # 记录游戏成绩和奖励
          game_record.save(user, 0, 0)
      except Exception as e:
          print('未知错误:', e)
          # 记录游戏成绩和奖励
          game_record.save(user, 0, 0)
      else:
          print('游戏结束,得分:{},奖励:{}'.format(score, reward))
          # 记录游戏成绩和奖励
          game_record.save(user, score, reward)
      finally:
          # 释放资源
          login.logout(user)
      

      以上是一些优化建议和代码示例,但是具体的实现还需要根据你目前的代码和需要继续修改。如果具体实现过程中遇到问题,欢迎继续咨询。


    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论
  • 瞬间动力 2023-05-28 22:54
    关注

    可以像下面这样对你的代码进行一些修改,以满足你的要求。这里只给出修改的部分代码,请结合你的完整代码进行修改。

    # 添加等级、计时器和得分变量
    level = 0
    timer = 0
    score = 0
    
    # 在主函数中添加参数 level
    def main(level):
      # 选择数独中需要填入空格的数量
      if level == 1:
        blanks = 6
        time_limit = 60
        bonus_time = 30 # 完成时间加分的时间阈值
        bonus_coin = 1 # 完成任务得到的金币个数
        penalty = 1 # 超时扣除的金币个数
      elif level == 2:
        blanks = 8
        time_limit = 120
        bonus_time = 60
        bonus_coin = 1
        penalty = 1
      elif level == 3:
        blanks = 10
        time_limit = 180
        bonus_time = 90
        bonus_coin = 1
        penalty = 1
      else:
        print("无效的等级选择")
        return
    
      # 根据等级和空格数量生成数独谜题
      puzzle = generate_sudoku_puzzle(6, blanks)
    
      # 开始计时
      start_time = time.time()
    
      # 输出游戏规则和等级
      print("游戏规则:等级一为填6个空,等级二为填8个空,等级三为填10个空,等级一在1分钟内完成给一个金币,超过一分钟减一个,等级二在两分钟内完成给一个金币,超过两分钟减一个,等级三在三分钟内完成给一个金币,超过三分钟减一个,等级一在30s内完成多给一个金币,等级二60s内完成多给一个金币,等级二90s内完成多给一个金币")
      print("当前等级:", level)
    
      # 输出数独谜题
      print(puzzle)
    
      # 填写数独谜题
      filled_puzzle = fill_puzzle(puzzle)
    
      # 停止计时
      elapsed_time = time.time() - start_time
    
      # 输出填写的数独和用时
      print(filled_puzzle)
      print("用时:", elapsed_time, "秒")
    
      # 根据用时和任务完成情况获得得分和金币奖励
      if elapsed_time <= time_limit:
        score = blanks
        if elapsed_time <= bonus_time:
          score += 1
        print("任务完成,得分:", score)
        print("获得金币奖励:", bonus_coin)
      else:
        print("任务失败,扣除金币:", penalty)
    
    # 在游戏开始前让用户选择等级
    level = int(input("请选择等级(1-3):"))
    
    # 开始游戏
    main(level)
    

    在这个修改后的代码中,我们添加了三个变量 level, timerscore 来跟踪游戏等级、计时器和得分。同时,我们在 main 函数之前让用户选择等级,之后将等级作为参数传递给 main 函数。

    main 函数内部,我们根据不同等级设置不同的任务:空格数量、时间限制、加分时间阈值、得到金币奖励的数量和超时的罚款数量。之后,我们生成新的数独题目并开始计时。根据输出的规则,我们向用户说明了当前的等级。

    在数独游戏结束后,我们计算用时并根据任务完成情况判断得分和金币奖励。如果用时小于等于时间限制,并且在加分时间阈值内完成,则可以获得额外的金币奖励。如果用时超过时间限制,则会被扣除金币罚款。

    希望这个修改后的代码可以满

    评论
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 6月6日
  • 已采纳回答 5月29日
  • 创建了问题 5月28日

悬赏问题

  • ¥80 关于海信电视聚好看安装应用的问题
  • ¥15 vue引入sdk后的回调问题
  • ¥15 求一个智能家居控制的代码
  • ¥15 ad软件 pcb布线pcb规则约束编辑器where the object matpcb布线pcb规则约束编辑器where the object matchs怎么没有+15v只有no net
  • ¥15 虚拟机vmnet8 nat模式可以ping通主机,主机也能ping通虚拟机,但是vmnet8一直未识别怎么解决,其次诊断结果就是默认网关不可用
  • ¥20 求各位能用我能理解的话回答超级简单的一些问题
  • ¥15 yolov5双目识别输出坐标代码报错
  • ¥15 这个代码有什么语法错误
  • ¥15 给予STM32按键中断与串口通信
  • ¥15 使用QT实现can通信