semvec/pypi-packages huggingface dataset:
yqn-client 1.0.0
YQN API Client - A Python client for YQN logistics
License: MIT
Requires Python: >=3.8
Keywords: yqn, api, client, logistics, ecommerce, warehouse

# YQN Client Python

A comprehensive Python client for YQN logistics, built with requests and Pydantic for type safety and ease of use.

## Features

- 🚀 Full async and sync support
- 📝 Type-safe models using Pydantic
- 🔧 Easy configuration
- 📚 Comprehensive API coverage
- 🧪 Full test coverage
- 📖 Detailed documentation

## Installation

```bash
pip install yqn-client
```

## Quick Start

```python
from yqn_client import YQNClient

# Initialize client
client = YQNClient(
    api_key="your-api-key",
    base_url="https://api.yqn.com"
)

# Get product list
products = client.products.list()
print(products)

# Create a product
product = client.products.create({
    "name": "Test Product",
    "sku": "TEST-001",
    "price": 99.99
})
```

## API Modules

The client is organized into the following modules:

- **Products** - Product management, SKU operations
- **Warehouse Plans** - Inbound plan management
- **Inventory** - Stock and inventory operations
- **Orders** - Sales order management
- **Returns** - Return order operations
- **Transfers** - Stock transfers
- **Appointments** - Appointment scheduling
- **Base Data** - Basic data queries
- **Auth** - Third-party authorization
- **Shipping** - Shipping fee calculations
- **Cost** - Cost and fee operations

## Documentation

Full documentation is available at [GitHub Repository](https://github.com/cpcc/yqn-client-python#readme).

## Development

```bash
# Install development dependencies
pip install -e ".[dev]"

# Run tests
pytest

# Format code
black src tests

# Type checking
mypy src
```

## License

This project is licensed under the MIT License - see the LICENSE file for details.
importfa 0.5
add parent/ancestor folder path into sys.path when import
License: MIT
Keywords: sample setuptools development

Given an equivalent way to achieve this but in import style, prevent formatter smash up your code

```
import xxx
if __name__=="__main__":
    import os,sys
    fa = os.path.abspath("/".join([sys.argv[0] + "/.."] + [".."] * 2))
    sys.path.append(fa)

import xxx_local_package # similar to ..xxx
```

For short, this project does this:

| use this project    |     |  equivalent code  |
| --- | --- | --- |
| import importfa.f | → | os.path.append(sys.argv\[0\] + "/../..") |
| import importfa.ff | →  | os.path.append(sys.argv\[0\] + "/../../..") |
| import importfa.fff |  → | os.path.append(sys.argv\[0\] + "/../../../..") |
| import importfa.fffff |  →  | os.path.append(sys.argv\[0\] + "/../../../../..") |


For convenience, `import importfa.f8` is  equivalent to `importfa.ffffffff`,etc.