Peut être utilisé avec AtCoder! Une collection de techniques pour dessiner du code court en Python!

introduction

Cet article concerne un mémo rédigé par des débutants gris d'AtCoder. Cela peut ne pas être très utile dans certains cas. Pardon.

Tout ce code a été vérifié pour fonctionner avec Python 3 (3.4.3) sur AtCoder et la nouvelle version juge de Python (3.8.2).

En outre, dans cet article, le code est écrit comme suit.

#contribution
#code
#production

En outre, en gros, écrire le code court est moins lisible et plus trompeur pour le lecteur, ** non recommandé </ font> **. Veuillez noter qu'il y en a.

Donc, fondamentalement, c'est une bonne idée d'écrire du code facile à lire. Cet article peut être recommandé pour ceux qui veulent viser le code le plus court dans toutes les langues ou le code le plus court en Python avec Python !!

1.0 Opération d'entrée de base

1.1 Fonctions couramment utilisées

eval() Une fonction qui exécute une chaîne de caractères. [](Peut être utilisé dans ...)

# 1 + 2
a = input()
print(eval(a))
# 3

replace() Il remplace la chaîne de caractères de la première fonction par la chaîne de caractères du deuxième argument. Dans l'exemple ci-dessous, les espaces sont remplacés par la chaîne "2".

# 1 3 4
a = input()
print(a.replace('4','5'))
# 1 3 5

Vous pouvez également le faire en combinaison avec la fonction eval () décrite ci-dessus.

# 10 3
print(eval(input().replace(' ','-'))) #10-Fera 3
# 7

[](Peut être utilisé dans ...)

1.2 Opérateurs couramment utilisés

Opérateurs d'affectation tels que + =, - =

C'est un opérateur d'affectation familier! !! Ce genre de chose est recommandé car il raccourcit le code et accélère le processus! !!

# 45
a = int(input())
a = a + 5
print(a)
# 50

Le code ci-dessus fait exactement la même chose que le code ci-dessous.

# 45
a = int(input())
a += 5
print(a)
# 50
~ -et- ~

~ Est un opérateur de bits qui inverse les bits. Il est généralement connu que lorsqu'un entier est inversé en bits, le nombre devient négatif et devient -1. Par exemple, dans l'exemple ci-dessous

a = 9
print(~a)
# -10

Le nombre de -1 a été émis avec la valeur négative. Si vous voulez en savoir plus, rendez-vous sur "2 Complément"! !!

Vous pouvez en profiter pour écrire a-1 et a + 1 dans un code plus court. Cependant, la mise en garde est que contrairement à l'opérateur d'affectation ci-dessus, la variable elle-même ne change pas.

a = 9
print(~-a)
print(-~a)
print(a)
# 8
# 10
# 9

À propos, l'ordre d'exécution est le suivant.

a = 9
print(~(-a))
print(-(~a))
# 8
# 10

1.3 Autres techniques

Attribuer une fonction à une variable

En Python, vous pouvez attribuer des fonctions aux variables. Cela vous permet d'utiliser des fonctions à nom long fréquemment utilisées plus courtes sans utiliser def.

p = print
p(3)
# 3
utilise booléen comme entier

Fondamentalement, en Python, le compilateur lira False = 0, True = 1 dans un tel endroit. Vous pouvez donc également effectuer les opérations suivantes:

mylist = [0,3,5,4]
print(mylist[True])#mylist[1]Sort
print(mylist[False])#mylist[0]Sort
# 3
# 0

2.0 Fonctionnement de base de la sortie

sortie de liste

En Python, si vous sortez normalement une liste, elle aura des virgules et des parenthèses, vous ne pouvez donc pas la sortir telle quelle. Par conséquent, il est nécessaire de concevoir ce qui suit.

Comment utiliser l'astérisque

Vous pouvez sortir proprement en ajoutant un astérisque avant la liste. Il peut également être rédigé de manière concise.

mylist = ['Alice','Bob',,4]
print(mylist)
print(*mylist)#J'ai pu le nettoyer
# [0, 3, 5, 4]
# 0 3 5 4

10.0 Enfin

En fait, cet article est mon premier article > < Je pense qu'il y a encore des endroits où je ne suis pas habitué à Qiita. Donc, si vous trouvez des erreurs typographiques, difficiles à voir ou à comprendre, veuillez en commenter de plus en plus. Nous pouvons également ajouter de nouveaux codes et techniques. Enfin, merci d'avoir lu cet article!

Recommended Posts

Peut être utilisé avec AtCoder! Une collection de techniques pour dessiner du code court en Python!
Une collection de code souvent utilisée dans Python personnel
Pour pouvoir utiliser le japonais avec Python dans l'environnement Docker
Notes sur les connaissances Python utilisables avec AtCoder
Une collection de techniques professionnelles compétitives à résoudre avec Python
Comprendre les probabilités et les statistiques qui peuvent être utilisées pour la gestion des progrès avec un programme python
J'ai créé un modèle de projet Python générique
Optimisation mathématique pour un travail gratuit avec Python + PuLP
Lecture de code de Safe, une bibliothèque pour examiner la force des mots de passe en Python
J'ai écrit un tri-arbre qui peut être utilisé pour l'implémentation de dictionnaire à grande vitesse en langage D et Python
[AtCoder] Résoudre un problème de ABC101 ~ 169 avec Python
Fonctions pouvant être utilisées dans l'instruction for
Techniques souvent utilisées dans le codage court en python (Bloc-notes)
Introduction du code de dessin pour les figures avec un certain degré de perfection des données météorologiques
Classe pour PYTHON qui peut être utilisée sans connaître LDAP
Python scikit-learn Une collection de conseils de modèles prédictifs souvent utilisés sur le terrain
Notes personnelles des opérations liées aux pandas qui peuvent être utilisées dans la pratique
Python scikit-learn Une collection de conseils de modèles prédictifs souvent utilisés sur le terrain
[Python3] Code qui peut être utilisé lorsque vous souhaitez découper une image dans une taille spécifique
Article qui peut être une ressource humaine qui comprend et maîtrise le mécanisme de l'API (avec du code Python)
Exemple de code spécifique pour travailler avec SQLite3 en Python
Paramètres VS Code pour le développement en Python avec achèvement
Une collection de commandes fréquemment utilisées dans la gestion des serveurs
Liste du code Python utilisé dans l'analyse de Big Data
Peut être utilisé chez les pros de la compétition! Bibliothèque standard Python
Utilisez tkinter pour déplacer le code de sortie en tant que "A et prétendant être B" en python
Résumé des méthodes d'analyse de données statistiques utilisant Python qui peuvent être utilisées en entreprise
[Python] Construire un environnement pour la programmation de compétition avec Atom (input () peut être utilisé!) [Mac]
[Python] Introduction au scraping WEB | Résumé des méthodes pouvant être utilisées avec webdriver
Liste des outils qui peuvent être utilisés pour essayer facilement l'analyse des émotions des phrases japonaises avec Python (essayez avec google colab)
Les zéros NumPy peuvent être définis même avec une taille de 0
Créer un compte enfant de connect with Stripe en Python
Techniques de tri en Python
Un exemple pour dessiner des points avec PIL (Python Imaging Library).
[Python3] Code qui peut être utilisé lorsque vous souhaitez redimensionner des images dossier par dossier
SSD 1306 OLED peut être utilisé avec Raspeye + python (Remarque)
Scripts pouvant être utilisés lors de l'utilisation de Bottle en Python
Une collection de méthodes utilisées lors de l'agrégation de données avec des pandas
Tourner un tableau de chaînes avec une instruction for (Python3)
[Python] Créer un écran pour le code d'état HTTP 403/404/500 avec Django
Voici un résumé des choses qui pourraient être utiles pour traiter des nombres complexes en Python
[Python] Un programme qui trouve le nombre maximum de jouets pouvant être achetés avec votre argent
Concurrence avec VS Code Créez un environnement Python pour les professionnels sous Windows
[Python] Mémo des phrases fréquemment utilisées dans les scripts Python
[Python] Créez un graphique qui peut être déplacé avec Plotly
Envelopper (partie de) la bibliothèque AtCoder en Cython pour une utilisation en Python
Un bref résumé de Graphviz en python (expliqué uniquement pour mac)
Faites attention à LANG pour UnicodeEncodeError lors de l'impression du japonais avec Python 3
Créez une Spinbox qui peut être affichée en binaire avec Tkinter
Un minuteur (ticker) qui peut être utilisé sur le terrain (peut être utilisé n'importe où)
J'ai créé beaucoup de fichiers pour la connexion RDP avec Python
L'histoire de la création d'un pilote standard pour db avec python.
Enquêter sur ce qui pourrait être utilisé comme analyseur Markdown en Python
J'ai fait un shuffle qui peut être réinitialisé (inversé) avec Python
Nouvelles fonctionnalités de Python 3.9 (1) -L'opérateur d'ensemble de somme peut être utilisé dans le type de dictionnaire.
Résumé de l'entrée standard de Python pouvant être utilisée dans Competition Pro
Créez une Spinbox pouvant être affichée dans HEX avec Tkinter
Obtenez une liste de fichiers dans un dossier avec python sans chemin
[Python] Connaissances de base utilisées dans AtCoder