Python: функция If - PullRequest
       11

Python: функция If

0 голосов
/ 25 ноября 2018

Это, вероятно, действительно просто, но я не могу понять.

У меня есть несколько списков, и я хочу вызвать определенные списки, если они находятся в диапазоне, равном значению x и любому числумежду х-5 и х +5.т.е. х-5, х-4, х-3, х-2, х-1, х, х + 1, х + 2, х + 3, х + 4 и х + 5.

Вв тот момент, когда у меня есть

if sum(listname[i])==x:

if sum(listname[i])==x-1:

if sum(listname[i])==x-2:

и т. д.

Как я могу сделать это так, чтобы он был объединен в одну функцию "если".

Я думал олинии что-то вроде:

if sum(listname[i])==x-5>=x>=x+5:

или

if sum(listname[i])==x or x-1 or x-2 ".. etc":

, но ни одна из них не работает.

Кто-нибудь может пролить свет на это?

Ответы [ 4 ]

0 голосов
/ 25 ноября 2018

Из того, что я понимаю из вашего вопроса.Вы должны проверить, находится ли sum(listname[i]) между (x-5, x+5)

Вы можете сделать это за один раз, если предположить, что x является возможным значением:

if (sum(listname[i]) >= (x - 5)) and (sum(listname[i]) <= (x+5))
0 голосов
/ 25 ноября 2018

Сценарий, подобный if sum(listname[i])==x or x-1 or x-2 ".. etc": (который не является допустимым Python), обычно решается с помощью if value in range(start, stop, step):

Таким образом, вы должны написать:

if sum(listname[i) in range(x-2, x):
    # Code for this case here...
0 голосов
/ 25 ноября 2018

Похоже, вы хотите проверить, находится ли сумма в списке между x - 5 и x + 5.Чтобы поместить это в один, если утверждение просто:

s = sum(listname[i])
if s >= x - 5 and s <= x + 5:
  # do stuff
0 голосов
/ 25 ноября 2018

Вы просто имеете в виду

if x-5 <= sum(listname[i]) <= x+5:
    ...
    ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...