w cat (w_cat) - Приложение к «Python в библиотеке»
Название: | Приложение к «Python в библиотеке» | |
Автор: | w cat (w_cat) | |
Жанр: | Самиздат, сетевая литература, Программирование: прочее, Python | |
Изадано в серии: | неизвестно | |
Издательство: | неизвестно | |
Год издания: | - | |
ISBN: | неизвестно | |
Отзывы: | Комментировать | |
Рейтинг: | ||
Поделись книгой с друзьями! Помощь сайту: донат на оплату сервера |
Краткое содержание книги "Приложение к «Python в библиотеке»"
Запустив скрипт «fb2_dir.py» Вы извлечете из файла исходники сакриптов.
Читаем онлайн "Приложение к «Python в библиотеке»". [Страница - 4]
#-------------------------
parse_dir(path) # сканирование текущей папки
print('Файлов извлечено '+str(Count))
7
j_par.py
#!/bin/env python# -*- coding: utf-8 -*-
# Объединение абзацев (версия 19.10.21)
import sys, os
#--------------------------------------
def EndStr(s):
, ,SQ = ''
, ,for a in reversed(s):
, , , ,if a == ' ':
, , , , , ,return SQ[:-1]
, , , ,else:
, , , , , ,SQ = a+SQ
#--------------------------------------
old_List = [] # Сюда читается
new_List = [] # Промеждуточный список
#--------------------------------------
#FN = input('Введите имя файла:')
#fn1=path+FN
FN = '2_.txt'
fb2_file=open(FN,'r')
#fb2_file=open(FN,'r', encoding='utf-8')
old_List=fb2_file.readlines()
fb2_file.close()
#--------------------------------------
SS = '' # Промежуточное хранение строки
FlagQ = False
i = -1
for item in old_List: # первый проход
поиск разорванных строк
, ,i += 1
, ,if i >= len(old_List):
# , , , ,new_List.append(item[i+1]) ?
, , , ,break
, ,s = item.strip()# Обрезание пробелов
, ,if s == '':
, , , ,new_List.append(s)
, , , ,continue
, ,m = ord(s[-1]) # последний символ строки
# , ,print(s)
, ,if (m > 1071 and m < 1104) or m == 44: # от "а" до "я" + ","
, , , ,if i+1 >= len(old_List):
, , , , , ,break
, , , ,d = old_List[i+1].strip()
, , , ,if (d != ''):
, , , , , ,m = ord(d[0]) # первый символ следующей строки
, , , , , ,if (m > 1071 and m < 1104): # от "а" до "я"):
, , , , , , , ,new_List.append(s+' @')# помечаем строку для объединения с последующей
, , , , , ,else:# в обычном тексте вероятность, что строка
завершится "собачкой" очено мала, но ... тогда это будет ошибочное объединение
, , , , , , , ,new_List.append(s)
, , , ,else:
, , , , , ,new_List.append(s)
, ,else:
, , , ,new_List.append(s)
old_List.clear()
#for item in reversed(new_List): # второй проход
объединение помеченных строк
for item in new_List:
, ,if item == '':
, , , ,if SS != '':
, , , , , ,old_List.append(SS)
, , , , , ,SS = ''
, , , ,old_List.append(item)
, , , ,continue
, ,if FlagQ:
, , , ,SS = SS[:-1] + item
, , , ,FlagQ = item[-1] == '@'
, ,else:
, , , ,if SS != '':
, , , , , ,old_List.append(SS)
, , , , , ,SS = ''
, , , ,if item[-1] == '@': # последний символ строки
, , , , , ,FlagQ = True
, , , , , ,SS = item
, , , ,else:
, , , , , ,old_List.append(item)
if SS != '':
, ,old_List.append(SS)
#--------------------------------------
fn2="3_x.txt"
new_file=open(fn2,'w')
for i in old_List:
, , new_file.write(i+'\n')
new_file.close()
print('Done')
perenos.py
|#!/bin/env python# -*- coding: utf-8 -*-
# Объединение абзацев разде-
# разделенных переносами
# 19.10.21
import sys, os
#--------------------------------------
def EndStr(s):
, ,SQ = ''
, ,for a in reversed(s):
, , , ,if a == ' ':
, , , , , ,return SQ[:-1]
, , , ,else:
, , , , , ,SQ = a+SQ
#--------------------------------------
old_List = [] # Сюда читается
new_List = [] # Промеждуточный список
#--------------------------------------
#FN = input('Введите имя файла:')
#fn1=path+FN
FN = '1.txt'
fb2_file=open(FN,'r')
#fb2_file=open(FN,'r', encoding='utf-8')
old_List=fb2_file.readlines()
fb2_file.close()
#--------------------------------------
SS = '' # Промежуточное хранение строки
SQ = '' # Начало слова "разор-
"разорванного" "странным" переносом
FlagQ = False
i = 0
Первый проход. Поиск "странных" переносов
for item in old_List:
, ,s = item.strip()# Обрезание пробелов
, ,if s == '':
, , , ,new_List.append(s)
, , , ,i += 1
, , , ,if i > len(old_List):
, , , , , ,new_List.append(item[i+1])
, , , , , ,break
, , , ,continue
, ,
, ,if (s[-1] == '-'): # последний символ строки
, , , ,SQ = EndStr(s) # следующая строка начинается с SQ
, , , ,if (SQ != None) and (SQ != '') and (old_List[i+1].find(SQ)==0):
, , , , , ,m = -(len(SQ)+1)
, , , , , ,new_List.append(s[:m]+'@') # помечаем строку для последующего объединения
, , , ,else:
, , , , , ,new_List.append(s)
, ,else:
, , , ,new_List.append(s)
, ,i += 1
, ,if i > len(old_List):
, , , ,new_List.append(item[i+1])
, , , ,break
old_List.clear()
# второй проход. соединение строк
#for item in reversed(new_List):
for item in new_List:
, ,if item == '':
, , , ,if SS != '':
, , , , , ,old_List.append(SS)
, , , , , ,SS = ''
, , , ,old_List.append(item)
, , , ,continue
# , ,print(item)
, ,if FlagQ:
, , , ,SS = SS[:-1] + item
, , , ,FlagQ = item[-1] == '@'
, ,else:
, , , ,if SS != '':
, , , , , ,old_List.append(SS)
, , , , , ,SS = ''
, , , ,if item[-1] == '@': # последний символ строки
, , , , , ,FlagQ = True
, , , , , ,SS = item
, , , ,else:
, , , , , ,old_List.append(item)
, , , , , , , ,
if SS != '':# запись последней строки
, ,old_List.append(SS)
#--------------------------------------
fn2="2_.txt"
new_file=open(fn2,'w')
for i in old_List:
, , new_file.write(i+'\n')
new_file.close()
print('Done')
str2parag.py
#!/usr/bin/env python# -*- coding: utf-8 -*-
import sys, os
#-- скрипт для сборки абзацев из разрозненных строк ---
s = '' # строка коию будем записывать в список
L = [] # список для хранения выходного файла
i = 0 # указатель положения в файле
def RusBukva1(n): # обработка буквы «до»
, ,return ((n > 223) and (n < 256)) or (n==44) or (n==45)
def RusBukva2(n): # обработка буквы «после»
, ,return ((n > 223) and (n < 256))
f = open('alfredr.txt', 'rb') # открываем и читаем промежуточный файл
d = f.read()
f.close()
c13 = 2 # константа индицирующая наличие символа «13»
for n in d: # проверка промежуточного файла на наличие символа «13»
, ,if (n == 13):
, , , ,c13 = 3
, , , ,break
for n in d: # основной цикл проверки --">
Книги схожие с «Приложение к «Python в библиотеке»» по жанру, серии, автору или названию:
Элен Гома - Зависимые Жанр: О любви Год издания: 2018 |