@DrPalmer

Как правильно написать условие IF?

Есть код, который по задумке, должен пройтись по списку имен из АПИ, где написаны имена машин, и если внутри имени есть -java- или-go-, то ТАКОЕ имя засунуть в словарь vm_to_create, а остальные засунуть в словарь vm_not_to_create.

НО! данный код говорит, что ему имена с PHP тоже нравятся! Что я сделал не так? как исправить?

2 вопрос: у меня в итоге выполнения кода создается только один словарь (либо тот, либо тот), а как написать так, чтобы подходящие имена падали в 1ый словарь, а остальные во 2ой?

Такие имена приходят из АПИ
"name" : "welcome-php-2.node.eu.consul"

import requests
import json
import re

def check_language(current_hostname):
    current_hostname = vm['name']
    if ['-java-' in current_hostname or '-go-' in current_hostname]:
        return True
    return False

response = requests.get('http://127.0.0.1/asl_real.json')
asl_vms = json.loads(response.text)

vm_to_create = {}

for vm in asl_vms:
    if check_language('current_hostname') == True: 
        vm_to_create = dict(name=vm['name'],os=vm['distribution']['description'])
        print(vm_to_create, 'update')
    else:
        vm_not_to_create = dict(name=vm['name'],os=vm['distribution']['description'])
        print(vm_not_to_create, 'not update')

Вывод:
{'name': 'welcome-php-2.node.eu.consul', 'os': 'Debian 11.3 x64'} update
{'name': 'welcome-php-3.node.eu.consul', 'os': 'Debian 10.1 x64'} update
{'name': 'aff-java-1.node.eu.consul', 'os': 'Debian 10.1 x64'} update
{'name': 'aff-java-3.node.eu.consul', 'os': 'Debian 10.1 x64'} update
{'name': 'aff-java-4.node.eu.consul', 'os': 'Debian 11.1 x64'} update
{'name': 'tgbot-go-1.node.eu.consul', 'os': 'Debian 10.1 x64'} update
{'name': 'tgbot-go-3.node.eu.consul', 'os': 'Debian 11.3 x64'} update
{'name': 'aff-java-5.node.eu.consul', 'os': 'Debian 11.1 x64'} update
{'name': 'aff-java-1337.node.eu.consul', 'os': 'Debian 11.1 x64'} update
  • Вопрос задан
  • 82 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы