Qual é o equivalente a scanf em Python?


Melhor resposta

Não há equivalência direta, já que Python é muito diferente de scanf.

scanf tenta analisar a linha de entrada e armazena os valores nas variáveis, sem limites para verificar a instância das strings de entrada; razão pela qual é recomendado que você use fgets e então escreva seu próprio analisador para sua linha de entrada esperada específica.

O Python mais próximo equivalente a fgets é

  • arquivo . ler : onde o arquivo é um arquivo aberto (talvez sys .stdin )

ou em um push:

  • entrada (Python3) ou raw\_input (Python2)

O input / raw\_input funções não são diretamente equivalentes a fgets porque :

  • fgets é limitado ao número de caracteres que são lidos, input / raw\_input não são limitados ited; eles lêem quando o retorno é pressionado.
  • fgets pode receber entrada de qualquer arquivo aberto – input / raw\_input apenas obtém dados dos programas stdin .
  • fgets não exibe um prompt – input / raw\_input pode opcionalmente emitir um prompt para os programas stdout .

Resposta

Você pode usar raw\_input (“prompt ”) Função.

A entrada será string por padrão. Você precisa convertê-lo em int, booleano, float etc etc de acordo com sua necessidade.

Se você estiver recebendo várias entradas ao mesmo tempo delimitadas por espaço, use:

[x , y] = raw\_input (). split (““)

Prazer em responder,

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *