Skip to main content

A Python library that prevents defining female-related names in code

Project description

please_do_not_define

Python library that prevents you from defining variables, functions or classes with names that contain female-related terms. Now that a small number of women declare that they are undefinedable. The library will make sure that you won't offend them.

Installation

pip install please_do_not_define

Purpose

This library helps maintain gender-neutral naming in your Python code by detecting and blocking the use of female-related terms in variable, function, and class names.

Features

  • Scans Python code for names containing female-related terms

  • Blocks execution if prohibited names are found

  • Supports detection of both English and Chinese female-related terms

  • Works with various file encodings

Usage

Simply import the library in your Python script:

import please_do_not_define

The library will automatically scan your main script file when imported and raise a NameError if any prohibited names are found.

Prohibited Terms

The library checks for names containing any of the following terms (case insensitive):

  • Chinese Terms:

女, 姑, 婆, 媳, 妇, 娘, 嬷, 姐, 妹, 嬢, 媛

  • English Terms:

woman, women, girl, lady, Miss, Mrs, queen, female, she, her

Example

If your code contains:

def print_girl_name():
    pass

The library will raise:

NameError: name 'print_girl_name' is illegal. Please don't try to define a female.

bin

The bin name is checkname, the usage is as follows:

  • checkname filename check whether your filename has the illegal name
  • checkname -s code check whether your input code has the illegal name
  • checkname -v show the version of the library
  • checkname -h show the help information

Note

This library is intended to satirize a point of view, not to actually express this.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

please_do_not_define-0.3.6.tar.gz (49.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

please_do_not_define-0.3.6-py3-none-any.whl (6.9 kB view details)

Uploaded Python 3

File details

Details for the file please_do_not_define-0.3.6.tar.gz.

File metadata

  • Download URL: please_do_not_define-0.3.6.tar.gz
  • Upload date:
  • Size: 49.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for please_do_not_define-0.3.6.tar.gz
Algorithm Hash digest
SHA256 7780c5a543fcf49842fe32f3f1b154e0d5aa6ca5e6789d8c220a4e305825c016
MD5 f525767a98c0fc566cecb55ae76e8787
BLAKE2b-256 567bbff3275a71c7975e5100f5cec060c629eb1857520c4f11bf20a4576330fb

See more details on using hashes here.

File details

Details for the file please_do_not_define-0.3.6-py3-none-any.whl.

File metadata

File hashes

Hashes for please_do_not_define-0.3.6-py3-none-any.whl
Algorithm Hash digest
SHA256 2583b2f4720ef1faa19dc16265edfb1d06d46bdbd697e4a8309322ca83eb8175
MD5 01640c774c16aaf667afe24a1be4b6a8
BLAKE2b-256 57de90d18258768a8a76eb568b66d069d41349add25c8ca06d3ac200c970d3ee

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page