m0_46621163 2021-11-05 09:45 采纳率: 0%
浏览 123

python数组中某个特定元素与某个值的比较


import numpy as np

n = eval(input("请输入程序的个数:"))
arrive_time = eval(input("请输入各个程序的到达时间:"))
server_time = eval(input("请输入各个程序的服务时间:"))
start_time = np.zeros(n)  # 开始时间
finish_time = np.zeros(n)  # 完成时间
whole_time = np.zeros(n)   # 周转时间
weightwhole_time = np.zeros(n)  # 带权周转时间
now_time = 0  # 需要设置now_time来记录当前时间,等于上一个程序的完成时间
'''
for i in range(n):
    if arrive_time[i] < now_time:
        print(1)
    else:
        print(2)
'''
while True:
    algorithm = eval(input("请输入1(FCFS)or 2(SJF)or 3(终止时间片轮转程序):"))
    if algorithm == 3:
        break
    elif algorithm == 1:  # 采用FCFS算法
        for i in range(n):
            # 执行一个程序前首先需要判断这个程序的到达时间是否<=当前时间,是则计算开始时间、完成时间、周转时间
            if arrive_time[i] <= now_time:
                start_time[i] = now_time
                finish_time[i] = start_time[i] + server_time[i]  # 完成 = 开始 + 服务
                whole_time[i] = finish_time[i] - arrive_time[i]  # 周转 = 完成 - 到达
                weightwhole_time[i] = whole_time[i] / server_time[i]  # 带权周转 = 周转 / 服务
                now_time = finish_time  # 这个程序的完成时间是下个程序的开始时间
            else:  # 如果在当前时间程序还没到达,那么当前时间就增加,直到有程序到达
                while arrive_time > now_time:
                    now_time += 1

在这段程序中,arrive_time数组已经被赋了初值,我想比较arrive_time[i]和now_time的大小,但是在while循环中总是报错提示我使用any()或者all()进行数组比较。不过我不是要将两个数组比较,我是想将数组中特定位置的元素和一个数比较,所以不能用这两个函数。
然后我就调试代码,发现不在这个循环里,在前面部分这么写是对的,系统不会报错,但是到了while-for 循环里就会报错。
有没有人知道这是为什么呀?求解答!
(缩进在程序里没有问题,他这个显示的有点奇怪)

  • 写回答

2条回答 默认 最新

  • 於黾 2021-11-05 09:50
    关注

    while arrive_time > now_time:
    now_time += 1
    这是什么写法,其实不就是now_time=arrive_time 吗
    问题是arrive_time是个数组,你怎么去把整个数组和一个数进行比较呢,要加下标啊
    now_time=arrive_time[i]

    评论

报告相同问题?

问题事件

  • 创建了问题 11月5日

悬赏问题

  • ¥15 Collection contains no element matching the predicate
  • ¥20 冻品电商平台的搜索是怎么实现的
  • ¥15 如何搞一个可以控制、显示马达频率
  • ¥15 WPF动态创建页面内容
  • ¥15 如何对TBSS的结果进行统计学的分析已完成置换检验,如何在最终的TBSS输出结果提取除具体值及如何做进一步相关性分析
  • ¥15 SQL数据库操作问题
  • ¥100 关于lm339比较电路出现的问题
  • ¥15 Matlab安装yalmip和cplex功能安装失败
  • ¥15 加装宝马安卓中控改变开机画面
  • ¥15 STK安装问题问问大家,这种情况应该怎么办