精通现代开发栈:Python、Git与Docker实战指南
第一部分:Python与TypeScript核心技能展示
Python高级特性实战
# 类型注解与异步编程
from typing import List, Dict, Optional, AsyncIterable
import asyncio
from dataclasses import dataclass
@dataclass
class User:
id: int
name: str
email: Optional[str] = None
# 异步数据获取
async def fetch_users(ids: List[int]) -> AsyncIterable[User]:
for id in ids:
# 模拟API请求延迟
await asyncio.sleep(0.1)
yield User(id=id, name=f"User_{
id}", email=f"user{
id}@example.com")
# 上下文管理器处理资源
class DatabaseConnection:
def __enter__(self):
print("Establishing database connection")
return self
def __exit__(self, exc_type, exc_val, exc_tb):
print("Closing database connection")
def query(self, sql: str) -> List[Dict]:
return [{
"id": 1, "data": "sample"}]
# 使用异步推导式处理数据
async def main():
user_ids = [i for i in range(1, 6)]
premium_users = [
user async for user in fetch_users(user_ids)
if user.id % 2 == 0
]
# 使用上下文管理器
with DatabaseConnection() as db:
result = db.query("SELECT * FROM users")
print(f"Premium users: {
[u.name for u in premium_users]}")
print(f"Query result: {
result}")
# 运行异步程序
if __name__ == "__main__":
asyncio.run(main())
TypeScript高级模式与类型系统
// 泛型与接口的高级应用
interface ApiResponse<T> {
status: number;
data: T;
timestamp: Date;
}
// 用户实体类型
type User =