Python List、切片与大模型:从入门到实践的优雅之旅

前言

大家好!今天我们来聊聊 Python 开发中几个非常实用的知识点------Python List、切片操作,以及如何将这些基础操作在大模型时代的实际应用。这篇文章将带你从基础概念走到实战,保证干货满满,看完就能用!


一、Python List:灵活的通用容器

1.1 List 是什么?

Python 中最灵活的特性之一就是 List,它不像 Java/C++ 那样需要提前指定容量和类型,和 JS 的 Array 类似,但更加优雅。可以说,JS 借鉴了 Python 的很多特性,不过两者真是一对好兄弟。

python 复制代码
# Python 中本身没有 Java/C++ 那样的内置数组
# list 是 Python 中灵活有序、可修改的通用容器列表
L = ["曹辉", 500, "赖庆庆", "周文强", "徐波", "洪忠圣"]
print(L)  # ['曹辉', 500, '赖庆庆']

1.2 Python vs JavaScript:各有所长

  • Python:适合机器学习、爬虫、数据分析
  • JavaScript:Number 类型没有高精度浮点数类型,特别适合做页面展示和交互

二、切片 Slice:人生苦短,我用 Python

2.1 切片简化了取元素的操作

切片是 Python 中大大简化了取元素的操作,让代码更加优雅。

python 复制代码
L = ["曹辉", 500, "赖庆庆", "周文强", "徐波", "洪忠圣"]

# 传统方式取前三项
r = []
n = 3
for i in range(n):
    r.append(L[i])
print(r)  # ['曹辉', 500, '赖庆庆']

# 使用切片
print(L[0:3])   # ['曹辉', 500, '赖庆庆']
print(L[:3])     # 同上,0可以省略
print(L[1:3])   # ['500, '赖庆庆']
print(L[-2:])    # ['徐波', '洪忠圣']

2.2 更多切片技巧

python 复制代码
L = list(range(100))
print(L[-10:])  # 取最后10个元素

# 字符串也可以切片
print('ABCDEFG'[:3])    # 'ABC'
print('ABCDEFG'[::2])  # 'ACEG' 每隔2个取一个

2.3 实战:不使用 strip 的 trim 函数

利用切片实现 trim 函数,这是一个经典的面试题!

python 复制代码
def trim(s):
    left = 0
    while left < len(s) and s[left] == ' ':
        left += 1
    right = len(s) 
    while right > left and s[right - 1] == ' ':
        right -= 1
    return s[left:right]

print(trim("   Hello world     "))  # 'Hello world'

三、大模型时代:Transformer 与 LLM 接口

3.1 Transformer 架构:改变世界的架构

  • OpenAI 基于 Google 开源的 Transformer 架构,引领了 2022 年底的生成式人工智能浪潮,现已成为业内标准。

主流 LLM 厂商:

  • OpenAI
  • DeepSeek(兼容 OpenAI 接口)
  • Google Gemini
  • Anthropic Claude

3.2 ModelScope:阿里的开源模型社区

  • ModelScope 是阿里云推出的开源模型社区
  • 包含海量开源模型和数据集
  • 非常适合做 NLP 实验

3.3 实战:调用 DeepSeek API

让我们看看如何使用 DeepSeek API 来处理实际问题:

python 复制代码
from openai import OpenAI

client = OpenAI(
    api_key="sk-665d3142ca9d480c9c6823c67f0cbe00",
    base_url="https://api.deepseek.com/v1"
)

COMPLETION_MODEL = "deepseek-chat"
prompt = """
Consideration product: 
工厂现货PVC充气青蛙夜市地摊热卖充气玩具发光蛙儿童水上玩具
1. Compose human readable product title used on 
Amazon in english within 20 words.
2. Write 5 selling points for the products in Amazon
3. Evaluate a price range for this product in U.S.

Output the result in json format with 
three properties called title, selling_point and 
price_range
"""

def get_response(prompt):
    response = client.chat.completions.create(
        model=COMPLETION_MODEL,
        messages=[
            {"role": "user", "content": prompt}
        ]
    )
    return response.choices[0].message.content

print(get_response(prompt))

3.4 Prompt 工程的艺术

写好 Prompt 是用好 LLM 的关键:

  1. **清晰且详细地表达目标(参考 Amazon 的细化方式)
  2. 分步骤:1, 2, 3...
  3. 约束返回格式:指定 JSON 格式,字段名清晰指定

这样 LLM 返回的结果示例:

json 复制代码
{
  "title": "Glow-in-the-Dark Inflatable PVC Frog Toy for Kids, Night Market, Water Play & Pool Fun",
  "selling_point": [
    "Vibrant Glow Feature: Built-in LED lights make this frog shine brightly at night, perfect for evening markets, camping, or backyard fun.",
    "Durable PVC Material: Made from thick, high-quality PVC that resists punctures and withstands rough play, both in water and on land.",
    "Versatile Use: Ideal for swimming pools, bathtubs, beaches, and night markets---a multi-purpose toy that kids love day or night.",
    "Safe & Child-Friendly: BPA-free, non-toxic material with smooth edges ensures safe play for children ages 3 and up.",
    "Attractive Novelty Design: Eye-catching frog shape with bright colors that appeal to kids and easily draw attention at street stalls or retail displays."
  ],
  "price_range": "$9.99 - $15.99"
}

四、Jupyter Notebook:边写代码边记录的神器

Jupyter Notebook 是数据分析、学习和写报告的绝佳工具:

  • 支持 Markdown 文件(.md)
  • Notebook 文件(.ipynb)
  • 边写代码边记录,所见即所得

总结

今天我们从 Python List 的灵活特性,谈到了切片的优雅使用,再到大模型时代的 LLM 接口调用。这些知识点看似简单,但组合起来就能发挥巨大的威力。希望这篇文章对你有所帮助,欢迎在评论区交流!


关键词:Python List、切片、Transformer、LLM、DeepSeek、ModelScope、Prompt 工程

相关推荐
程序员龙叔18 小时前
编写高质量 Skill 系列 -- 如何设计需求分析与用例生成的 SKILL
自动化测试·软件测试·python·软件测试工程师·接口测试·性能测试·skill·ai测试
袋鱼不重20 小时前
我的神奇同事,AI 用多了居然写了个 Open In Codex
前端·后端·ai编程
用户83562907805120 小时前
使用 Python 操作 Word 内容控件
后端·python
量子位21 小时前
刚刚,Fable-5之下,智谱开源的GLM-5.2拿下AI编程第一!
ai编程
量子位21 小时前
SpaceX一分现金没花收购Cursor,马斯克吞下AI编程工具第一名
ai编程
程序员黑豆21 小时前
JDK 下载安装与配置详细教程
java·前端·ai编程
孟健21 小时前
我装了 Hermes Desktop,但最后还是回到 Telegram
ai编程
hdsoft_huge21 小时前
第一章 项目全景深度解析
ai编程·手把手实战教程
ServBay1 天前
ServBay 1.30.0 更新:双平台引入 MCP 服务,AI 编程助手成为全栈本地运维
后端·ai编程