Você está aqui: Python ::: Dicas & Truques ::: Sistema

Como retornar o nome do usuário logado no Windows ou Linux em Python usando as funções os.getlogin() ou getpass.getuser()

Quantidade de visualizações: 84 vezes
Em algumas situações nossos códigos Python precisam retornar o nome do usuário atualmente logado no sistema, ou seja, o usuário atual do Windows ou Linux (Sistemas Unix). Para isso nós podemos usar as funções os.getlogin() ou getpass.getuser().

Vamos ver primeiro um exemplo usando o método getlogin() do módulo os:

# importamos o módulo os
import os as sistema

def main():
  # vamos obter o nome do usuário logado no sistema
  usuario = sistema.getlogin()
  
  # e mostramos o resultado
  print("O usuário logado no momento é:", usuario)
 
if __name__== "__main__":
  main()


Ao executar este código Python nós teremos o seguinte resultado:

O usuário logado no momento é: Osmar

Veja agora o mesmo resultado usando o módulo getpass:

# importamos o módulo getpass
import getpass

def main():
  # vamos obter o nome do usuário logado no sistema
  usuario = getpass.getuser() 
  
  # e mostramos o resultado
  print("O usuário logado no momento é:", usuario)
 
if __name__== "__main__":
  main()

A documentação do Python recomenda que devemos sempre dar preferência ao método getpass.getuser(), uma vez que este verifica as variáveis de ambiente LOGNAME ou USERNAME para descobrir o nome do usuário logado no sistema. Caso não seja possível encontrar o valor nessas duas variáveis, a função getpass.getuser() procura em pwd.getpwuid(os.getuid())[0]. Note, porém, que o módulo pwd é exclusivo para sistemas Unix.


Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Passos Iniciais

Machine Learning para iniciantes - Como usar a biblioteca NumPy em seus programas Python

Quantidade de visualizações: 774 vezes
Criada em 2005 por Travis Oliphant, a biblioteca NumPy é uma biblioteca Python que, embora escrita parcialmente em código Python, possui trechos de código C ou C++, principalmente as partes que requerem processamento ou computação mais veloz.

Estudiosos, entusiastas e desenvolvedores de soluções envolvendo Data Science, Deep Learning, Machine Learning e Inteligência Artificial (IA) em geral, encontram nessa biblioteca muitas funções úteis para a criação e manipulação de vetores e matrizes, além de funções para trabalhar no domínio de algebra linear e transformação fourier.

A biblioteca NumPy (Numerical Python) é um projeto open source e pode ser usada livremente em qualquer programa Python. Uma das razões para a sua adoção é a substituição das listas Python pelos vetores e matrizes NumPy, já que estes últimos são 50 vezes mais rápidas que as listas Python, que muitas vezes fazem o papel de arrays.

Minha instalação do Python já possui a biblioteca NumPy?

A melhor forma de descobrir se a NumPy já está disponível para os seus códigos Python é rodando o seguinte trecho de código:

# importamos a bibliteca NumPy
import numpy as np
 
def main():
  # construimos um vetor de cinco elementos
  vetor = np.array([20, 3, 87, 4, 120])
  # imprimimos seu conteúdo
  print(vetor)

if __name__== "__main__":
  main()

Se você vir o resultado abaixo:

[ 20   3  87   4 120]

então sua instalação do Python já contém a biblioteca NumPy e você está pronto(a) para experimentar as demais dicas e truques dessa seção.

Porém, se você ainda não tiver a NumPy, a seguinte mensagem de erro será exibida:

Exception has occurred: ModuleNotFoundError
No module named 'numpy'
  File "C:\estudos_python\estudos.py", line 2, in <module>
    import numpy as np

Não se desespere. Basta abrir uma janela de prompt e disparar o comando abaixo:

pip install numpy

Aguarde alguns minutos para que o Pip baixe e instale a biblioteca. Em seguida tente executar o código acima novamente.

Agora é só aproveitar tudo que a biblioteca NumPy tem a nos oferecer.


Python ::: Dicas & Truques ::: Strings e Caracteres

Apostila Python - Como verificar se uma string contém apenas números (dígitos)

Quantidade de visualizações: 16652 vezes
Este exemplo mostra como como usar a função isdigit() para verificar se uma string contém apenas números. Se alguma letra ou caractere especial estiver contido, a função retorna False.

Veja o código Python completo:

def main():
  string = "49380"
 
  if string.isdigit():
    print("A string contém apenas números")
  else:
    print("A string não contém somente números")
 
if __name__== "__main__":
  main()

Ao executarmos este código nós teremos o seguinte resultado:

A string contém apenas números


Python ::: Fundamentos da Linguagem ::: Passos Iniciais

Python para iniciantes - Como importar módulos e identificadores Python usando a instrução import...as

Quantidade de visualizações: 6492 vezes
Quando importamos módulos para nossos programas, a linguagem Python permite que alteremos os nomes dos módulos. Isso pode ser feito com a instrução import...as. Veja:

# importa o módulo math com outro nome
import math as matematica

def main():
  # usa o método ceil do namespace matematica
  print("Valor arredondado: ", matematica.ceil(8.12))

if __name__== "__main__":
  main()

Ao executar este código nós teremos o seguinte resultado:

Valor arredondado: 9

É possível importar com outros nomes os métodos e identificadores de um módulo. Veja:

# importa o ceil com outro nome
from math import ceil as arredondar

def main():
  # usa o método arredondar
  print("Valor arredondado: ",  arredondar(8.12))

if __name__== "__main__":
  main()



Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Números Aleatórios / Números Randômicos

Como gerar números aleatórios em Python usando o método random.randint() da biblioteca NumPy

Quantidade de visualizações: 397 vezes
Nesta dica mostrarei como podemos gerar números inteiros randômicos usando random.randint() da biblioteca NumPy. Note que a geração de números aleatórias é uma parte importante para o desenvolvimento de modelos de teste (test models) em Inteligência Artificial (IA), Machine Learning e outras áreas de estudo que envolvem Data Science.

Veja um exemplo da forma mais simples do uso da função random.randint():

# importamos o módulo random da bibliteca NumPy
from numpy import random

def main():
  # vamos gerar um número inteiro aleatório de 0 (incluído) à
  # 10 (não incluído) 
  valor = random.randint(10)
  print("O número sorteado foi: ", valor)  

if __name__== "__main__":
  main()


Ao executar este código teremos um resultado parecido com:

O número sorteado foi: 3

Aqui nós informamos o limite alto do valor aleatório a ser gerado (mas ele não é incluído). Se quisermos limitar a faixa inferior, podemos tirar proveito dos parâmetros low e high da função randint(). Veja:

# importamos o módulo random da bibliteca NumPy
from numpy import random

def main():
  # vamos gerar um número inteiro aleatório de 5 (incluído) 
  # à 10 (não incluído) 
  valor = random.randint(5, 10)
  print("O número sorteado foi: ", valor)  

if __name__== "__main__":
  main()

A partir da versão 1.19 da NumPy, os desenvolvedores da biblioteca recomendam o uso do método integers() do módulo default_rng().


Python ::: Lista de Exercícios Resolvidos (Algorítmos Resolvidos) ::: Python Básico

Exercícios Resolvidos de Python - Python Básico - Ler um número inteiro na faixa 0-999 e mostrar a soma de seus dígitos

Quantidade de visualizações: 305 vezes
Exercício Resolvido de Python - Python Básico - Ler um número inteiro na faixa 0-999 e mostrar a soma de seus dígitos

Pergunta/Tarefa:

Escreva um programa Python console ou GUI que leia um inteiro na faixa 0-999 e mostre a soma de seus dígitos. Por exemplo, se o valor for 523, a soma de seus dígitos será 5 + 2 + 3 = 10. Lembre-se que você deverá usar apenas os operadores matemáticos e o operador de módulo (%). Seu programa deverá exibir a seguinte saída:

Informe um valor de 0 até 999: 821
A soma dos dígitos é: 11
Resposta/Solução:

Veja a resolução comentada deste exercício usando Python console:

# função principal do programa
def main():
  # vamos solicitar ao usuário que informe um valor inteiro
  # na faixa 0 a 999 (incluindo)
  valor = int(input("Informe um valor de 0 até 999: "))
  
  # vamos verificar se o valor está na faixa permitida
  if(valor < 0 or valor > 999):
    print("Valor fora da faixa permitida")
  else:
    # vamos obter o terceiro dígito
    terceiro = valor % 10
    # obtém os digitos restantes
    valor = valor // 10
 
    # vamos obter o segundo dígito
    segundo = valor % 10
    # obtém os digitos restantes
    valor = valor // 10
 
    # vamos obter o primeiro dígito
    primeiro = valor % 10
    # obtém os digitos restantes
    valor = valor // 10
 
    # vamos obter a soma dos dígitos
    soma = terceiro + segundo + primeiro
 
    # vamos mostrar o resultado
    print("A soma dos dígitos é:", soma)
  
if __name__== "__main__":
  main()



Veja mais Dicas e truques de Python

Dicas e truques de outras linguagens

Quem Somos

Osmar J. Silva
WhatsApp +55 (062) 98553-6711

Goiânia-GO
Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Elétrica pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 15 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
José de Angelis
WhatsApp +55 (062) 98243-1195

Goiânia-GO
Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..

Linguagens Mais Populares

1º lugar: Java
2º lugar: C#
3º lugar: PHP
4º lugar: Delphi
5º lugar: Python
6º lugar: JavaScript
7º lugar: C
8º lugar: C++
9º lugar: VB.NET
10º lugar: JSP (Java Server Pages)



© 2021 Arquivo de Códigos - Todos os direitos reservados | Versión en Español | Versão em Português