скажите, является ли Python в-i режиме

Вы можете использовать API fetch , реализованный браузерами, или AJAX для использования с ReactJS (или любым другим кодом внешнего интерфейса)

С [ 113] вы можете использовать пакеты типа request, request-promise, node-fetch, axios аналогичным образом.

Пример использования библиотеки request, доступной для nodejs

request
  .get('http://google.com/img.png' // api url)
  .on('response', function(response) {
    console.log(response.statusCode) // 200
    console.log(response.headers['content-type']) // 'image/png'
    // save the image somewhere, or render to webpage
  })
  .pipe(request.put('http://yoursite.com/img.png'))

5
задан ʞɔıu 12 March 2009 в 20:38
поделиться

3 ответа

Как установить, осматривают режим программно

Ответ от ссылка @Jweede обеспечивается неточен. Это должно быть:

import os
os.environ['PYTHONINSPECT'] = '1'

Как получить, установлены ли интерактивные/осмотренные флаги

Просто другой вариант ответа @Brian:

import os
from ctypes import POINTER, c_int, cast, pythonapi

def in_interactive_inspect_mode():
    """Whether '-i' option is present or PYTHONINSPECT is not empty."""
    if os.environ.get('PYTHONINSPECT'): return True
    iflag_ptr = cast(pythonapi.Py_InteractiveFlag, POINTER(c_int))
    #NOTE: in Python 2.6+ ctypes.pythonapi.Py_InspectFlag > 0
    #      when PYTHONINSPECT set or '-i' is present 
    return iflag_ptr.contents.value != 0

Посмотрите main.c Python.

3
ответ дан 14 December 2019 в 19:26
поделиться

Я смотрел на источник, и хотя переменный набор, когда-i обеспечивается, хранится в Py_InteractiveFlag, не похоже, что он выставляется Python.

Однако, если Вы не возражаете доставать немного грязные с некоторым низким уровнем ctypes осмотр, я думаю, что можно достигнуть значение:

import ctypes, os

def interactive_inspect_mode():
    flagPtr = ctypes.cast(ctypes.pythonapi.Py_InteractiveFlag, 
                         ctypes.POINTER(ctypes.c_int))
    return flagPtr.contents.value > 0 or bool(os.environ.get("PYTHONINSPECT",False))

[Редактирование] фиксирует опечатку и также проверяет PYTHONINSPECT (который не устанавливает переменную), как указано в комментариях.

2
ответ дан 14 December 2019 в 19:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: