Модуль string корисно знати

модуль string, та приклади  застосування f-strings.

f-strings приклади та bestpractices:

print('%s is %d years old' % (name, age))

"Hello, {}. You are {}.".format(name, age)


"Hello, {1}. You are {0}.".format(age, name)

person = {'name': 'Eric', 'age': 74}
"Hello, {name}. You are {age}.".format(**person)

print(("Hello, {first_name} {last_name}. You are {age}. " +
>>> "You are a {profession}. You were a member of {affiliation}.") \
>>> .format(first_name=first_name, last_name=last_name, age=age, \
>>> profession=profession, affiliation=affiliation))

f"Name: {name}, age: {age}"

print(f'There are total of {bags * apples_in_bag} apples')

f"{2 * 37}"
'74'

debug:

import math
x = 0.8
print(f'{math.cos(x) = }')
print(f'{math.sin(x) = }')
$ python debug.py
math.cos(x) = 0.6967067093471654
math.sin(x) = 0.7173560908995228

У коді модуля string можемо знайти перелік функцій:

import string
# capitalize() - Converts the first character to upper case
# casefold() - Converts string into lower case
# center() - Returns a centered string
# count() - Returns the number of times a specified value occurs in a string
# encode() - Returns an encoded version of the string
# endswith() - Returns true if the string ends with the specified value
# expandtabs() - Sets the tab size of the string
# find() - Searches the string for a specified value and returns the position of where it was found
# format() - Formats specified values in a string
# format_map() - Formats specified values in a string
# index() - Searches the string for a specified value and returns the position of where it was found
# isalnum() - Returns True if all characters in the string are alphanumeric
# isalpha() - Returns True if all characters in the string are in the alphabet
# isdecimal() - Returns True if all characters in the string are decimals
# isdigit() - Returns True if all characters in the string are digits
# isidentifier() - Returns True if the string is an identifier
# islower() - Returns True if all characters in the string are lower case
# isnumeric() - Returns True if all characters in the string are numeric
# isprintable() - Returns True if all characters in the string are printable
# isspace() - Returns True if all characters in the string are whitespaces
# istitle() - Returns True if the string follows the rules of a title
# isupper() - Returns True if all characters in the string are upper case
# join() - Joins the elements of an iterable to the end of the string
# ljust() - Returns a left justified version of the string
# lower() - Converts a string into lower case
# lstrip() - Returns a left trim version of the string
# maketrans() - Returns a translation table to be used in translations
# partition() - Returns a tuple where the string is parted into three parts
# replace() - Returns a string where a specified value is replaced with a specified value
# rfind() - Searches the string for a specified value and returns the last position of where it was found
# rindex() - Searches the string for a specified value and returns the last position of where it was found
# rjust() - Returns a right justified version of the string
# rpartition() - Returns a tuple where the string is parted into three parts
# rsplit() - Splits the string at the specified separator, and returns a list
# rstrip() - Returns a right trim version of the string
# split() - Splits the string at the specified separator, and returns a list
# splitlines() - Splits the string at line breaks and returns a list
# startswith() - Returns true if the string starts with the specified value
# strip() - Returns a trimmed version of the string
# swapcase() - Swaps cases, lower case becomes upper case and vice versa
# title() - Converts the first character of each word to upper case
# translate() - Returns a translated string
# upper() - Converts a string into upper case
# zfill() - Fills the string with a specified number of 0 values at the beginning
###

Деяких функцій дуже не вистачає, як може здатися. Наприклад якщо треба перевірити чи символ належить до ASCII символів треба зробити змінну з переліком таких символів? Ні! Ми маємо можливість отримати їх з бібліотеки (довідник тут):

string.ascii_letters – The concatenation of the ascii_lowercase and ascii_uppercase constants described below. This value is not locale-dependent.
string.ascii_lowercase – The lowercase letters 'abcdefghijklmnopqrstuvwxyz'. This value is not locale-dependent and will not change.
string.ascii_uppercase  – The uppercase letters 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'. This value is not locale-dependent and will not change.
string.digits – The string '0123456789'.
string.hexdigits – The string ‘0123456789abcdefABCDEF’.
string.punctuation – String of ASCII characters which are considered punctuation characters in the C locale: !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~.

та це багато інших констант, які можуть бути корисними.

Якщо хтось подумає що цього нема в бібліотеках – пошукайте, може це колесо вже є.

 

 

Залишити відповідь