搭建步骤
访问PyCharm官网,单击Download。
在Download页面,选择PyCharm Community Edition,单击Download下载。
双击安装文件pycharm-community-2024.1.1.exe开始安装,并根据安装向导完成安装。
重要 在安装选项步骤,勾选‘添加“bin”文件夹到PATH’。
打开PyCharm,单击New Project,创建一个新项目用于管理使用Python语言的软件应用或工具。
在New Project窗口填写项目信息。
Name:项目名称,例如pythonProject。
Location:项目文件的保存位置,方便您管理项目文件。
说明 Create Git repository:创建Git版本控制仓库,本示例不勾选。
Create a welcome script:创建一个main.py文件,本示例不勾选。
Interpreter type:运行环境,本示例选择Project venv。
Project venv:项目虚拟环境,虚拟环境会将项目的依赖项和Python解释器隔离开来,可以为每个项目创建独立的环境,并在其中安装项目所需的包和依赖项,适用于大多数Python项目。
Python version:选择安装的python解释器版本,默认为您已安装的python版本,如果您安装有多个版本可以手动修改。
在 New Project 对话框中完成以下配置:
Name:输入项目名称,例如 pythonProject。
Location:选择项目存储路径,例如 D:\ide\PythonProjects。
Create a welcome script:根据需要勾选。
配置完成后,单击右下角 Create 按钮创建项目。
Base conda:基础conda环境,基于Conda(跨平台环境管理器)创建的基础环境,功能更强大,适用于多语言开发的复杂环境项目,此处暂不做详细介绍。
Custom environment:自定义环境,手动创建一个全新的Python环境,并手动安装所需的包和依赖项。
Environment:Generate new表示生成一个新的环境;Select existing表示选择一个存在的环境。
Type:环境的类型,选择默认Virtualenv。
Base python:选择python解释器版本。
Location:python环境的保存位置。
说明 Inherit packages from base interpreter:这个环境继承全局基础解释器所安装的第三方库。
Make available to all projects:将这个环境安装的第三方库用于所有项目。
在 New Project 对话框左侧选择 Pure Python 项目类型,右侧设置 Name(如 pythonProject)和 Location(项目保存路径),完成后单击 Create。
右键单击项目名称,选择New->Python File,在新弹出窗口输入文件名hello_aliyun,选择Python file,然后按下回车就创建了一个名称为hello_aliyun.py的文件。
在右侧编辑区域输入print("hello aliyun!"),单击右上角运行按钮,可以在底部Run选项卡看到运行结果hello aliyun!。
使用python和pip命令
在PyCharm窗口底部单击Terminal选项卡或者按下Alt + F12打开Terminal。Terminal是PyCharm内置的一个命令行工具,可以执行大部分命令,例如使用python命令可以执行python文件,使用pip install来安装第三方库等等。
hello_aliyun.py 文件内容:
print("hello aliyun!")
在 Terminal 中执行 python 命令运行脚本,并使用 pip install 安装第三方库:
(.venv) PS D:\ide\PythonProjects\pythonProject> python hello_aliyun.py
hello aliyun!
(.venv) PS D:\ide\PythonProjects\pythonProject> pip install requests
Collecting requests
Obtaining dependency information for requests from https://files.pythonhosted.org/packages/70/8e/0e2d847013cb52cd35b38c009bb167a1a26b2ce6cd6965bf26b47bc0bf44/requests-2.31.0-py3-none-any.whl.metadata
Downloading requests-2.31.0-py3-none-any.whl.metadata (4.6 kB)
Collecting charset-normalizer<4,>=2 (from requests)
Obtaining dependency information for charset-normalizer<4,>=2 from https://files.pythonhosted.org/packages/b6/7c/8debebb4f90174074b827c63242c23851bdf00a53249fba57fef3416e40/charset_normalizer-3.3.2-cp312-cp312-win_amd64.whl.metadata
...ding charset_normalizer-3.3.2-cp312-cp312-win_amd64.whl.metadata (34 kB)
Collecting idna<4,>=2.5 (from requests)
Obtaining dependency information for idna<4,>=2.5 from https://files.pythonhosted.org/packages/e5/3e/741d8c82801c347547f8a2a06a57dbb01992be9e948df2ea0eda2c8b79e8/idna-3.7-py3-none-any.whl.metadata
Downloading idna-3.7-py3-none-any.whl.metadata (9.9 kB)
后续操作
在搭建完成Python开发环境后,您可以通过以下方式迅速体验Python的实际应用场景:利用Python进行多种开发操作。以下是一些具体的使用场景及操作指南:
1.使用阿里云Python SDK调用阿里云OpenAPI
在调用之前,您需要先获取访问凭证AccessKey,建议使用RAM用户的AccessKey。更多信息,请参见创建RAM用户的AccessKey。
登录SDK Center,选择将要使用的产品,例如您将要调用云服务器ECS的DescribeInstanceTypeFamilies接口为例。
在页面中间的参数配置页签,并填写需要的参数信息。填写时请参考右侧的文档页签,充分了解接口的说明和注意事项(尤其是费用相关信息),以及各参数的具体含义和使用方法。如DescribeInstanceTypeFamilies接口支持传入两个参数,其中RegionId为必填,您可填入cn-qingdao(表示青岛地域);Generation非必填,您可填入ecs-5(表示系列 V 实例规格族),参数的详细取值可在右侧文档中查看,请根据示例值的格式按照您的需求进行填写。
选择接口后,在页面右侧的 文档 页签中可查看各请求参数的字段名称、类型及是否必填等详细说明。
在右侧的SDK示例页面,选择Python语言,单击下载完整工程按钮,下载SDK完整工程至本地并解压。
在右侧 SDK 示例区域,SDK 代系选择 V2.0 推荐,语言选择 Python。
代码示例:
# -*- coding: utf-8 -*-
import os
import sys
from typing import List
from alibabacloud_ecs20140526.client import Client as Ecs20140526Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_ecs20140526 import models as ecs_20140526_models
from alibabacloud_tea_util import models as util_models
from alibabacloud_tea_util.client import Client as UtilClient
class Sample:
def __init__(self):
pass
@staticmethod
def create_client() -> Ecs20140526Client:
"""
使用AK&SK初始化账号Client
@return: Client
@throws Exception
"""
config = open_api_models.Config(
# os.environ表示通过环境变量获取Access Key ID和Access Key Secret
# 必填,请确保代码运行环境设置了环境变量 ALIBABA_CLOUD_ACCESS_KEY_ID。,
access_key_id=os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'],
# 必填,请确保代码运行环境设置了环境变量 ALIBABA_CLOUD_ACCESS_KEY_SECRET。,
access_key_secret=os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
)
config.endpoint = f'ecs.cn-qingdao.aliyuncs.com'
return Ecs20140526Client(config)
@staticmethod
async def main_async(
args: List[str],
) -> None:
client = Sample.create_client()
describe_instance_type_families_request = ecs_20140526_models.DescribeInstanceTypeFamiliesRequest(
region_id='cn-qingdao',
generation='ecs-5'
)
runtime = util_models.RuntimeOptions()
try:
# 复制代码运行请自行打印 API 的返回值
await client.describe_instance_type_families_with_options_async(describe_instance_type_families_request, runtime)
except Exception as error:
# 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。
# 错误 message
print(error.message)
# 诊断地址
print(error.data.get("Recommend"))
UtilClient.assert_as_string(error.message)
def main(
args: List[str],
) -> None:
client = Sample.create_client()
describe_instance_type_families_request = ecs_20140526_models.DescribeInstanceTypeFamiliesRequest(
region_id='cn-qingdao',
generation='ecs-5'
)
runtime = util_models.RuntimeOptions()
try:
# 复制代码运行请自行打印 API 的返回值
response = client.describe_instance_type_families_with_options(describe_instance_type_families_request, runtime)
print(response)
except Exception as error:
# 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。
# 错误 message
print(error.message)
# 诊断地址
print(error.data.get("Recommend"))
UtilClient.assert_as_string(error.message)
if __name__ == '__main__':
main(sys.argv[1:])
运行代码后,返回结果中 statusCode 为 200 表示 API 调用成功,响应体包含 ECS 实例类型族列表信息。部分响应输出:
: '1rHpYSAeV5ewkgoDCes4x8A7'}, 'statusCode': 200, 'body': {'InstanceTypeFamilies': {'InstanceTypeFamily': [{'Generation': 'ecs-5', 'InstanceTypeFamilyId': 'ecs.g6'}, {'Generation': 'ecs-5', 'InstanceTypeFamilyId': 'ecs.ebmg
使用阿里云Python SDK调用阿里云OpenAPI,具体操作,请参见通过IDE使用阿里云Python SDK。
2.调用千问API实现对话功能
阿里云百炼支持通过API调用大模型,涵盖OpenAI兼容接口、DashScope SDK等接入方式。调用服务前您需要开通阿里云百炼,获取API KEY。具体操作,请参见账号设置。
重要 在获取API Key后,需将其配置到环境变量,以避免在代码中显式地设置API Key,从而降低泄露风险。具体操作步骤请参见配置API Key到环境变量。
通过运行以下命令安装OpenAI Python SDK:
# 如果运行失败,您可以将pip替换成pip3再运行
pip install -U openai
当终端出现Successfully installed ... openai-x.x.x的提示后,表示您已经成功安装OpenAI Python SDK。
如您已完成Python及OpenAI的Python SDK安装,可运行以下示例代码以调用千问API:
import os
from openai import OpenAI
try:
client = OpenAI(
# os.getenv表示通过环境变量获取API Key,若没有配置环境变量,请用阿里云百炼API Key将下行替换为:api_key="sk-xxx",
api_key=os.getenv("DASHSCOPE_API_KEY"),
base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat.completions.create(
model="qwen-plus",
messages=[
{'role': 'system', 'content': 'You are a helpful assistant.'},
{'role': 'user', 'content': '你是谁?'}
]
)
print(completion.choices[0].message.content)
except Exception as e:
print(f"错误信息:{e}")
输出结果:
D:\official_site\Demo\venv\Scripts\python.exe D:\official_site\Demo\venv\ecsram\TongYi.py
我是来自阿里云的语言模型,我叫通义千问。
调用千问API,具体操作,请参见OpenAI Python SDK。
3.调用DeepSeek API
本段主要介绍在阿里云百炼平台上通过API调用DeepSeek系列模型的方法。其中,deepseek-r1与deepseek-v3各提供100万个免费Token,部分蒸馏模型可限时免费体验。
调用服务前您需要开通阿里云百炼,获取API KEY。具体操作,请参见账号设置。
重要 在获取API Key后,需将其配置到环境变量,以避免在代码中显式地设置API Key,从而降低泄露风险。具体操作步骤请参见配置API Key到环境变量。
通过运行以下命令安装OpenAI Python SDK:
# 如果运行失败,您可以将pip替换成pip3再运行
pip install -U openai
Downloading jiter-0.8.2-cp312-cp312-win_amd64.whl (204 kB)
204.7/204.7 kB 654.9 kB/s eta 0:00:00
Downloading pydantic-2.10.6-py3-none-any.whl (431 kB)
431.7/431.7 kB 642.5 kB/s eta 0:00:00
Downloading pydantic_core-2.27.2-cp312-cp312-win_amd64.whl (2.0 MB)
2.0/2.0 MB 715.4 kB/s eta 0:00:00
Downloading sniffio-1.3.1-py3-none-any.whl (10 kB)
Downloading tqdm-4.67.1-py3-none-any.whl (78 kB)
78.5/78.5 kB 875.6 kB/s eta 0:00:00
Downloading typing_extensions-4.12.2-py3-none-any.whl (37 kB)
Downloading annotated_types-0.7.0-py3-none-any.whl (13 kB)
Downloading h11-0.14.0-py3-none-any.whl (58 kB)
58.3/58.3 kB 762.2 kB/s eta 0:00:00
Installing collected packages: typing-extensions, tqdm, sniffio, jiter, h11, distro, annotated-types, pydantic-core, httpcore, anyio, pydantic, httpx, openai
Successfully installed annotated-types-0.7.0 anyio-4.8.0 distro-1.9.0 h11-0.14.0 httpcore-1.0.7 httpx-0.28.1 jiter-0.8.2 openai-1.65.2 pydantic-2.10.6 pydantic-core-2.27.2 sniffio-1.3.1 tqdm-4.67.1 typing-extensions-4.12.2
当终端出现Successfully installed ... openai-x.x.x的提示后,表示您已经成功安装OpenAI Python SDK。
如果您已完成Python及OpenAI的Python SDK的安装,可以运行以下示例代码以调用DeepSeek模型服务:
import os
from openai import OpenAI
client = OpenAI(
# os.getenv表示通过环境变量获取API Key,若没有配置环境变量,请用阿里云百炼API Key将下行替换为:api_key="sk-xxx",
api_key=os.getenv("DASHSCOPE_API_KEY"),
base_url="https://dashscope.aliyuncs.com/compatible-mode/v1"
)
completion = client.chat.completions.create(
model="deepseek-r1", # 此处以 deepseek-r1 为例,可按需更换模型名称。
messages=[
{'role': 'user', 'content': '9.9和9.11谁大'}
]
)
# 通过reasoning_content字段打印思考过程
print("思考过程:")
print(completion.choices[0].message.reasoning_content)
# 通过content字段打印最终答案
print("最终答案:")
print(completion.choices[0].message.content)
运行上述代码后,示例输出如下。
思考过程:
嗯,用户问的是9.9和9.11哪个大。这个问题看起来简单,但其实可能需要仔细分析,特别是考虑到数字的表示方式。首先,我应该确认用户指的是小数还是其他形式的数字,比如版本号或者日期。不过根据常见的数学问题,这里应该是指小数比较。
首先,我需要明确这两个数的结构。9.9通常被理解为9加0.9,也就是9.90。而9.11则是9加0.11。这样比较的话,整数部分都是9,所以需要比较小数部分。9.90和0.11。显然,0.90大于0.11,所以9.9应该比9.11大。不过,这里可能存在一个常见的误解,尤其是当数字被当作版本号时,比如软件版本中的9.9和9.11。
不过,可能用户有其他的考虑,比如是否把9.11误解为9又11/100,也就是0.11,而9.9则是0.9。这时候,0.9明显大于0.11,所以答案是9.9大。但有时候,人们可能会错误地认为9.11的十分位是1,而9.9的十分位是9,所以直接比较十分位的话,9.9更大。不过,正确的做法是将小数位数对齐,把9.9变为9.90和9.11比较,这样就清楚了。
总结起来,无论是作为小数还是版本号,答案可能不同,但根据数学标准,作为小数的话,9.9更大。不过需要确认用户是否考虑的是版本号的情况,如果是的话,答案相反。因此,可能需要进一步询问用户的情境,但根据一般数学问题,应回答9.9更大。
最终答案:
9.9和9.11比较时,若按**数学中的小数**理解:
- 将9.9补全为9.90,其小数部分为0.90;
- 9.11的小数部分为0.11;
- 显然**0.90 > 0.11**,因此**9.9 > 9.11**。
若涉及**版本号**(如软件版本):
- 9.11可能表示第9版的第11次更新,而9.9是第9版的第9次更新,此时**9.11 > 9.9**。
**默认按数学小数比较,结论为 9.9 更大**。
调用DeepSeek API,具体操作,请参见。