FC ConcursosFC Concursos

Questão FC331209

Linguagens Scripting não são comumente "tipadas", isto é, uma variável pode assumir o valor de uma string em um momento, um inteiro num outro e ainda uma estrutura de dados mais co

Linguagens de Programação

FGV · 2008

Linguagens Scripting não são comumente "tipadas", isto é, uma variável pode assumir o valor de uma string em um momento, um inteiro num outro e ainda uma estrutura de dados mais complexa em um terceiro. Uma linguagem "não-tipada" também diminui a quantidade de código necessária para a realização de determinadas tarefas.

Assinale a alternativa que contenha um exemplo de trecho de programa em que é criado um botão, na versão Python:

  1. button .b -text Hello! -font {Times 16} -command {puts Alô Mundo!);
  2. for ($n = 1; $n <= 10; ++$n) { printf ("%d squared is %d\n", $n $n*$n); }; b.pack ( )
  3. def action(app): l = Tkinter.Label ( top, text = "Hello there") l.pack() app = Tkinter.Tk( ) but = MyButton( app) app.mainloop; } b. pack ( )
  4. b = Button (app, text = 'Hello!', font = (name ='Times', size = 16), command = print ('Alô Mundo!')) b.pack( )
  5. $depth_limit = 20; @directory_list = @ARGV; # "-s" abbreviates "the size of", and "-f" "... is a file". find (sub {$size{$File::Find::name} = -s if -f;}, @directory_list); @sorted = sort {$size{$b} <=> $size{$a}} keys %size;
Mostrar resposta e comentário

Gabarito

D

Comentário do professor

Na alternativa D temos a criação de um widget de interface gráfica em Python usando o padrão do Tkinter. A expressão b = Button(app, text='Hello!', ...) instancia um botão cuja janela-pai é a variável app, e atribui o objeto à variável b — exemplificando a atribuição dinâmica típica de Python.

Os parâmetros configuram atributos visuais e funcionais: text define o rótulo, font indica tipo e tamanho da fonte, e command recebe a ação a ser executada quando o botão for clicado. Em Tkinter, o método pack() anexa o widget à janela, tornando-o visível.

Observação didática: command deve receber uma callable (por exemplo, lambda: print('Alô Mundo!')); usar print('Alô Mundo!') passa o resultado da chamada imediata, não a função a ser executada no clique.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo