a = 'IMG_20220621_205706'
new_date = '0722'
f'{a[:8]}{new_date}{a[12:]}'
>>>'IMG_20220722_205706'
import os
path = r"C:\test\Изменение название фотографии\Фото"
for file_name in os.listdir(path):
# Имя файла и его формат
base_name, ext = os.path.splitext(file_name)
# Нужны файлы определенного формата
if ext.lower() not in ['.jpg', '.png']:
continue
# Полный путь к текущему файлу
abs_file_name = os.path.join(path, file_name)
# Полный путь к текущему файлу с новым названием
j = base_name.split('_')
k = f'{j[0]}_{j[1]}_{int(j[2])+2}'
new_abs_file_name = os.path.join(path, str(k) + ext)
os.rename(abs_file_name, new_abs_file_name)
result.append(temp)
result.append(temp[:])
# 1st question
items = ["lawyer", "attorney", "prosecutor"]
new_list = []
for i in items:
i = i + " is related to legal affairs"
new_list.append(i)
print(new_list)
#functional solution = use map
items = ["lawyer", "attorney", "prosecutor"]
new_list = list(map(lambda x: x + " is related to legal affairs", items))
print(new_list)
def game():
number = random.randint(0, 1000)
tries = 1
done = False
while not done:
guess = input('Введите число: ')
if guess.isdigit():
guess = int(guess)
if guess == number:
done = True
print('Ты победил! Я загадал {guess}. Ты использовал {tries} попыток.')
else:
tries += 1
if guess > number:
print('Загаданное число меньше!')
else:
print('Загаданное число больше!')
else:
print('Это не число от 1 до 1000!')
game()
def func(r):
from random import choices
from math import log
xs = range(1, r)
ws = [log(x) for x in xs]
x = choices(xs, weights=ws)
return x
a = func(100)
b = func(50)
c = func(10)
print(a, b, c)
ValueError: operands could not be broadcast together with shapes (1,2) (2,3)
При работе с двумя массивами NumPy сравнивает их формы по элементам. Он начинается с конечных (то есть самых правых) измерений и идет влево. Два измерения совместимы, если они равны или одно из них равно 1. Если эти условия не выполняются, возникает исключение ValueError: operands could not be broadcast together with shapes(ValueError: операнды не могут быть переданы вместе, указывая на то, что массивы имеют несовместимые формы).
for ip in ip_adresses:
textlookfor = r"ftp://\d+.\d+.\d+.\d+.\d.\d+"
r = re.findall(textlookfor, ip)
print(r)
result = []
for ip in ip_adresses:
textlookfor = r"ftp://\d+.\d+.\d+.\d+.\d.\d+"
r = re.findall(textlookfor, ip)
result.append(r)
print(result)
def f(data):
for ip in ip_adresses:
textlookfor = r"ftp://\d+.\d+.\d+.\d+.\d.\d+"
r = re.findall(textlookfor, ip)
yield r
res = f(my_data)
print(next(res))
print(next(res))
import unittest
from selenium import webdriver
from selenium.webdriver.common.by import By
URL = 'https://psy.edu.ru/'
class check_psyedu(unittest.TestCase):
def setUp(self):
self.driver = webdriver.Chrome(r'C:\Users\Алексей\YandexDisk\Job\Python\Test\chromedriver\chromedriver.exe')
self.driver.set_window_size(1920, 1080)
def test_1(self):
names = ("aleksei", "Алексей", " Рынденков Алексей",)
for name in names:
# тут name просто как название теста, чтобы когда тест не прошёл было наглядно видно где споткнулся
with self.subTest(name):
self.driver.get(URL)
self.driver.find_element(By.NAME, "name").send_keys(name)
self.driver.find_element(By.CSS_SELECTOR, ".btn").click()
assert self.driver.find_element(By.CSS_SELECTOR,
".still-quest_item:nth-child(1) > .err_message").text == "Напишите русскими буквами!"
assert self.driver.find_element(By.CSS_SELECTOR, ".err_message:nth-child(3)").text == "Обязательное поле!"
assert self.driver.find_element(By.CSS_SELECTOR, ".still-quest_item:nth-child(3)").text == "Обязательное поле!"
def tearDown(self):
self.driver.close()
self.driver.quit()
if __name__ == "__main__":
unittest.main()
@parameterized([
(2, 2, 4),
(2, 3, 8),
(1, 9, 1),
(0, 9, 0),
])
def test_pow(base, exponent, expected):
assert_equal(math.pow(base, exponent), expected)
from collections import defaultdict
queries = [
'смотреть сериалы онлайн',
'новости спорта',
'афиша кино',
'курс доллара',
'сериалы этим летом',
'курс по питону',
'сериалы про спорт'
]
n_quer = len(queries)
res = defaultdict(int)
for quer in queries:
res[len(quer.split())] += 1
print(res)