精通现代开发栈:Python、Git与Docker实战指南
精通现代开发栈:Python、Git与Docker实战指南
第一部分:Python与TypeScript核心技能展示
Python高级特性实战
# 类型注解与异步编程
from typing import List, Dict, Optional, AsyncIterable
import asyncio
from dataclasses import dataclass@dataclass
class User:id: intname: stremail: 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 selfdef __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 =