Python Dicas e Trechos de Código (Snippets) – Parte 9

Aqui ficam mais uma série de exercícios resolvidos.

Fatiamento (Slicing) em Pyton.

Em Python é possível aceder aos elementos de uma lista de uma forma individual, strings e tuplos  através do seus índices.

É necessário não esquecer, que os índices começam em zero, e não em um:

nums = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 15, 20, 25, 30, 35]
nums[0]  # 0, primeiro elemento
nums[15] # 35, último elemento

Obter secções de elementos.

Por vezes só pretendemos obter só uma parte de uma sequência, ou seja, obter elementos específicos de uma secção. A isto designa-se por fatiar (slicing).

A sintaxe para fatiar (slicing) tem o seguinte formato:

sequencia[start:stop:step]

Exemplos:

print(nums[2:5])  # [2, 3, 4]
print(nums[::2])  # [0, 2, 4, 6, 8, 10, 20, 30]

No primeiro exemplo indicamos que só queremos os elementos que iniciam no índice 2 inclusive e termina no índice 5 exclusive.

No segundo exemplo só queremos os elementos em índices pares.

As strings também podem ser fatiadas:

text = "Python é uma linguagem de programação versátil!"
text_1 = text[0:8]
text_2 = text[25:37]
print(text_1 + text_2)  # Python é programação

Exemplos de uso, exercícios resolvidos.

Verificar se a palavra é um palíndromo. Palíndromos são frases que podem ser lidas da esquerda para a direita e da direita para a esquerda.

Input:

radar

Output:

Sim

Input:

laptop

output:

Não

def check_palindrome(word):
	forward =  word
	backward = word[::-1]

	if forward == backward:
		return "Sim"
	else:
		return "Não"

if __name__ == '__main__':
	word = input().strip()
	print(check_palindrome(word))	

Escreva um programa que leia um inteiro e imprima o último digito.

Input:

45393

Output:

3

integer_input = int(input())
print(str(integer_input)[-1:])

Como criar uma password aleatória em Python.

import random

converted_ascii_to_char = [chr(i) for i in range(33, 126)]
password_length = int(input)
password = ''.join(random.sample(converted_ascii_to_char, password_length))
print(f'Password Aleatória: {password}')

Leave a Reply