delet all what dont need

This commit is contained in:
Crai-cry 2026-03-24 22:00:55 +03:00
parent 7555dc3319
commit aedebb3eba

View File

@ -9,7 +9,6 @@ def load_vacancies(filepath: str) -> list[dict]:
except: except:
print() print()
return [] return []
def filter_by_city(vacancies: list[dict], city: str) -> list[dict]: def filter_by_city(vacancies: list[dict], city: str) -> list[dict]:
return [i for i in vacancies if i.get('city','').lower() == city.lower()] return [i for i in vacancies if i.get('city','').lower() == city.lower()]
def filter_by_skills(vacancies: list[dict], required_skills: list[str]) -> list[dict]: def filter_by_skills(vacancies: list[dict], required_skills: list[str]) -> list[dict]:
@ -22,7 +21,6 @@ def extract_top_skills(vacancies: list[dict], top_n: int) -> list[tuple[str, int
all_skills = [] all_skills = []
for v in vacancies: for v in vacancies:
all_skills.extend(v.get('skills', [])) all_skills.extend(v.get('skills', []))
skill_counts = Counter(all_skills) skill_counts = Counter(all_skills)
return skill_counts.most_common(top_n) return skill_counts.most_common(top_n)
def calculate_average_salary(vacancies: list[dict]) -> float: def calculate_average_salary(vacancies: list[dict]) -> float:
@ -33,17 +31,14 @@ def calculate_average_salary(vacancies: list[dict]) -> float:
for v in vacancies: for v in vacancies:
salary_from = v.get('salary_from') salary_from = v.get('salary_from')
salary_to = v.get('salary_to') salary_to = v.get('salary_to')
if salary_from is not None and salary_to is not None: if salary_from is not None and salary_to is not None:
salaries.append((salary_from + salary_to) / 2) salaries.append((salary_from + salary_to) / 2)
elif salary_from is not None: elif salary_from is not None:
salaries.append(salary_from) salaries.append(salary_from)
elif salary_to is not None: elif salary_to is not None:
salaries.append(salary_to) salaries.append(salary_to)
if not salaries: if not salaries:
return 0.0 return 0.0
return sum(salaries) / len(salaries) return sum(salaries) / len(salaries)
def group_by_company(vacancies: list[dict]) -> dict[str, int]: def group_by_company(vacancies: list[dict]) -> dict[str, int]:
all_company = [] all_company = []
@ -54,7 +49,6 @@ def group_by_company(vacancies: list[dict]) -> dict[str, int]:
def format_vacancy_short(vacancy: dict) -> str: def format_vacancy_short(vacancy: dict) -> str:
salary_from = vacancy.get('salary_from') salary_from = vacancy.get('salary_from')
salary_to = vacancy.get('salary_to') salary_to = vacancy.get('salary_to')
if salary_from is not None and salary_to is not None: if salary_from is not None and salary_to is not None:
salary_str = f"от {salary_from} до {salary_to}" salary_str = f"от {salary_from} до {salary_to}"
elif salary_from is not None: elif salary_from is not None:
@ -63,31 +57,16 @@ def format_vacancy_short(vacancy: dict) -> str:
salary_str = f"до {salary_to}" salary_str = f"до {salary_to}"
else: else:
salary_str = "зарплата не указана" salary_str = "зарплата не указана"
return (f"ID {vacancy.get('id')}: {vacancy.get('title')} в {vacancy.get('company')}, " return (f"ID {vacancy.get('id')}: {vacancy.get('title')} в {vacancy.get('company')}, "
f"{vacancy.get('city')}{salary_str}") f"{vacancy.get('city')}{salary_str}")
def save_filtered_results(vacancies: list[dict], filename: str) -> bool: def save_filtered_results(vacancies: list[dict], filename: str) -> bool:
return return
def interface():
os.system('cls' if os.name == 'nt' else 'clear')
print ("Your command:")
print ("1. Load form json\n2. Filter by city\n3. Filter by skils\n4. Filter by salary")
print ("5. Extract unique companies\n6. Extract top skills\n7. Calculate average salary")
print ("8. Group by company\n9. Format vacancy short\n10. Save filtred results\n11. Exit")
def user_chouse(user_input:int):
match user_input:
case 1:
return load_vacancies(input("Path for json: "))
case 11:
return
case _:
print ("Error uncorrecteble number")
def main(): def main():
while (user_input != 11): main_list=load_vacancies(input("Print path for json:"))
interface()
user_input = int(input("Chouse command: "))
user_chouse(user_input)
if __name__ =="__main__": if __name__ =="__main__":
#вход проги #вход проги