Задание: Вывести количество слов и предложений в строке, также вывести количество артиклей таких как THE и A, вывести строку убрав пробелы.
ВОТ В ПРИНЦИПЕ И САМ КОД:
# -*- coding: cp1251 -*-
import re
class some:
art=["a","the"]
def __init__(self,stroka):
self.r=stroka
self.splited = stroka.split(".")
self.nsent = len(self.splited)
print (self.r)
def p(self):
for i in self.splited:
pass
print("Number of sentences: ")
print (self.nsent-1)
def pW(self):
self.splited=self.r.split(" ")
self.nsent=len(self.splited)
for a in self.splited:
pass
print ("Number of words: ")
print(self.nsent)
def pA(self):
print ("article THE in string :")
print (self.r.upper().count(" THE "))
print ("article A in string :")
print (self.r.upper().count(" A "))
pass
def wS(self):
print(self.r.replace(' ',''))
print("Заданная строка")
x=some("Hello world. Just A Hello the world, but the not use'd. Just a hello the world.")
x.p()
x.pW()
x.pA()
x.wS()
З.Ы. КОД ДОРАБОТАН !!!!
Просидев несколько дней за программой для копирования директторий на Linux, я всё таки дошел до понимания её логики. Тоесть нам для копирования дерева каталогов, нужно выполнять рекурсию по определению типа (каталог или папка), и для переноса файлов в новые создаваемые папки.
Вобщем вот он долгожданный код, но вылаживаю всеголишь его часть!!!
static void dir_copy(char* src_path, char* dst_path) {
struct dirent *entry;
struct stat eStat;
DIR *src_dir;
char* realFileName = new char[MAX_PATH];
char temp[MAX_PATH], tempto[MAX_PATH];
strcpy(temp, src_path);
strcpy(tempto, dst_path);
lstat(src_path, &eStat);
if (S_ISDIR(eStat.st_mode)) {
mkdir(dst_path, 0777);
if (src_dir = opendir(src_path)) {
while ((entry = readdir(src_dir)) != NULL) {
if (strcmp(".", entry->d_name) == 0 || strcmp("..", entry->d_name) == 0) {
continue;
}
strcpy(realFileName, src_path);
strcat(realFileName, "/");
strcat(realFileName, entry->d_name);
stat(realFileName, &eStat);
if (S_ISDIR(eStat.st_mode)) {
sprintf(temp, "%s/%s", src_path, entry->d_name);
sprintf(tempto, "%s/%s", dst_path, entry->d_name);
mkdir(tempto, 0777);
dir_copy(temp, tempto);
} else {
sprintf(temp, "%s/%s", src_path, entry->d_name);
sprintf(tempto, "%s/%s", dst_path, entry->d_name);
file_copy(temp, tempto);
}
}
closedir(src_dir);
}
} else {
sprintf(temp, "%s", src_path);
sprintf(tempto, "%s", dst_path);
file_copy(temp, tempto);
}
}
Не хватает копирования файлов, и чтение из других директорий !!!