Невозможно прочитать IF при выводе на печать

Для следующего кода Python рекомендовал мне использовать a.any. Теперь, согласно моему коду, то, что показывают выходы, неверно. l больше, чем 1, но на выходе печатается r вместо q=10.

from numpy import *
import numpy as np

for i in range (1,3):
    r=np.random.uniform(0,3,i)
    x=np.random.uniform(0,9,i)    
    h=np.random.uniform(0,1,i)
    l=r+x
    if (l<1.0).any:
        q=r
    elif (l>1.0).any:
        q=10
    print("q= ",q,"l= ",l)

У вас есть вызовany: if (l<1.0).any():

Aran-Fey 16.03.2018 09:43

@ Аран Ах, какие плохие ошибки. Спасибо, мой друг. Спасибо. и знаете ли вы, как изменить выходные данные этого кода с массивов на обычные числа? вывод [0,000121], но мне нужно 0,000121. Еще раз спасибо

David 16.03.2018 09:49

@David q и l будут содержать 1,2 или 3 элемента, как вы хотите их распечатать?

FlyingTeller 16.03.2018 09:54

@David, вы можете использовать * для распаковки итераций, например: print(*l)

con-- 16.03.2018 10:00

Ошибка @con: аргумент print () после * должен быть повторяемым, а не int

David 16.03.2018 10:43

@FlyingTeller Я хочу распечатать q и l, а затем найти их минимальное значение в выводе.

David 16.03.2018 11:02

@David проблема, вероятно, в том, что (l> 1.0) .any () истинно, q становится 10 (int) вместо массива numpy (повторяемый). Вы можете просто сделать q = np.array ([10]) для обработки этого крайнего случая.

con-- 16.03.2018 11:14

@ con- спасибо. У меня есть еще вопросы по поиску минимума и порядка печати. я должен открыть новый вопрос? или спросите здесь еще раз?

David 16.03.2018 11:23

@David, вероятно, лучше всего открыть новый вопрос, этот раздел комментариев становится довольно длинным

con-- 16.03.2018 12:54
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
9
55
1

Ответы 1

Я посмотрел на твои вопросы. Это можно проверить, изменив случайное число. использование np.random.uniform(0,1) не требует any(), если вам просто нужно случайное число. Но если важно иметь конкретные номера для каждого i, вы должны использовать any().

for i in range (1,3):
    r=np.random.uniform(0,3)
    x=np.random.uniform(0,9)    
    h=np.random.uniform(0,1)
    l=r+x
    if l<1.0:
        q=r
    elif l>1.0:
        q=10
    print("q= ",q,"l= ",l)

Другие вопросы по теме