Python基础学习笔记

小甲鱼《零基础入门学习Python》学习笔记 根据老师的建议,现在将第二次复习小甲鱼的《零基础入门学习Python》而做的学习笔记,上传到网上,方便今后复习和保存,因为是手写的,所以做了扫描锐化处理,方便阅读。 ... 阅读详情

学习路径

1.学习变量

主要学习变量的命名方式

2.学习数据类型及类型转换

每个编程语言的类型种类不一样,需要学习有哪些种类,种类的表示方式和类型转换方法。
比如python的基本数据类型

整数(int): 用来表示整数,例如 -5、0、42。

浮点数(float): 用来表示带有小数点的数,例如 3.14、-0.001。

字符串(str): 用来表示文本,例如 'Hello, World!'、"Python"。

布尔值(bool): 用来表示真(True)或假(False)。

3.标识符

标识符主要学习就是变量命名的规则,一般都有如下规则

标识符可以是字母(小写或大写)、数字(但不能以数字开头)和下划线的组合。

标识符不能是保留字(关键字),例如 if、else、while等。

标识符对大小写敏感,例如 myVar 和 myvar 是不同的标识符。

运算符

以python为例,几乎所有语言都包含算术运算符、比较运算符、逻辑运算符

算术运算符:

+:加法
-:减法
*:乘法
 /:除法
%:取模(取余)
 //:整除
**:幂运算

赋值运算符及复合赋值运算符

+=: 加法赋值运算符
x += 3  # 等同于 x = x + 3

-=: 减法赋值运算符
*=: 乘法赋值运算符
/=: 除法赋值运算符
%=: 取模赋值运算符
//=: 整除赋值运算符
**=: 幂运算赋值运算符

比较运算符:

==:等于
!=:不等于
>:大于
<:小于
>=:大于等于
<=:小于等于

逻辑运算符:

and:与
or:或
not:非

有关字符串的操作

字符串的拼接

使用 + 运算符:

str1 = "Hello, "
str2 = "World!"

result = str1 + str2
print(result)
# 输出:Hello, World!

使用 .format() 方法:

name = "Alice"
age = 25

result = "My name is {}, and I am {} years old.".format(name, age)
print(result)
# 输出:My name is Alice, and I am 25 years old.

使用 % 格式化字符串:

name = "Charlie"
age = 22

result = "My name is %s, and I am %d years old." % (name, age)
print(result)
# 输出:My name is Charlie, and I am 22 years old.

使用 f-string(Python 3.6及以上版本):

name = "Bob"
age = 30

result = f"My name is {name}, and I am {age} years old."
print(result)
# 输出:My name is Bob, and I am 30 years old.

数据输入

在Python中,input() 函数用于接收用户的输入。它允许用户在程序运行时输入数据,然后将输入的内容返回给程序。以下是一个简单的例子:

# 接收用户输入的名字
name = input("请输入您的名字: ")

# 打印输入的名字
print("您输入的名字是:", name)

请注意,input() 函数始终返回一个字符串。如果你期望输入的是一个数字,你可能需要使用 int() 或 float() 函数将其转换为相应的数值类型。

# 接收用户输入的年龄并将其转换为整数
age = int(input("请输入您的年龄: "))

# 打印输入的年龄
print("您输入的年龄是:", age)

判断语句

在Python中,判断语句主要使用 if、elif(可选)、else(可选)关键字来实现。以下是一个基本的判断语句的使用示例:

# 示例:根据用户输入的数字判断正负零
number = float(input("请输入一个数字: "))

if number > 0:
    print("这是一个正数")
elif number == 0:
    print("这是零")
else:
    print("这是一个负数")

随机数的使用

在Python中,可以使用 random 模块来生成随机数。以下是一些常见的随机数生成方法:
生成一个随机整数:

import random

# 生成一个范围在1到10之间的随机整数(包括1和10)
random_number = random.randint(1, 10)
print(random_number)

从序列中随机选择一个元素:

import random

my_list = [1, 2, 3, 4, 5]

# 从列表中随机选择一个元素
random_element = random.choice(my_list)
print(random_element)

从序列中随机选择一个元素:

import random

my_list = [1, 2, 3, 4, 5]

# 从列表中随机选择一个元素
random_element = random.choice(my_list)
print(random_element)

在使用随机数时,记得先导入 random 模块。根据实际需求,选择合适的方法来生成随机数。

循环语句

for 循环:

for 循环用于遍历一个可迭代对象(如列表、元组、字符串等),执行循环体中的代码块。

# 遍历列表中的元素
my_list = [1, 2, 3, 4, 5]
for item in my_list:
    print(item)
    
# 遍历字符串中的字符
my_string = "Hello"
for char in my_string:
    print(char)
使用 range() 生成数字序列进行循环
for i in range(5):
    print(i)

while 循环:

while 循环用于在条件为真的情况下执行代码块,直到条件变为假。

# 使用 while 循环计算 1 到 5 的和
sum_result = 0
counter = 1

while counter <= 5:
    sum_result += counter
    counter += 1

print("1 到 5 的和为:", sum_result)

# 使用 while 循环遍历列表
my_list = [1, 2, 3, 4, 5]
index = 0

while index < len(my_list):
    print(my_list[index])
    index += 1

可以使用 while 循环来创建一个无限循环。无限循环是一种没有明确终止条件的循环,它会一直执行

while True:
    print("这是一个无限循环!")

控制循环

在循环中,有一些关键字和语句可以用于控制循环的流程:
break: 用于跳出循环,终止循环的执行。

for i in range(10):
    if i == 5:
        break
    print(i)

continue: 用于跳过当前循环中的剩余代码,进入下一次循环迭代。

for i in range(10):
    if i % 2 == 0:
        continue
    print(i)

else: 在循环条件为假时执行,除非在循环中遇到 break。

for i in range(5):
    print(i)
else:
    print("循环结束")

在嵌套循环中,循环控制语句只能作用在所在的循环上,无法对上层循环起作用

range() 函数

上面代码中的range() 函数用于生成一个表示数字范围的不可变序列。它常用于循环中。
range() 函数的基本语法如下:

range(stop)
range(start, stop, step)

start:可选,表示范围的起始值,默认为 0。
stop:必需,表示范围的结束值(不包含在范围内)。
step:可选,表示步长,默认为 1。

转义字符

换行符 \n: 表示一个换行符,用于在字符串中创建新的一行。
制表符 \t: 表示一个制表符,用于在字符串中创建水平制表符(Tab)。
回车符 \r: 表示一个回车符,通常用于将光标移动到当前行的开头。
原始字符串 r 前缀: 可以在字符串前加上 r 来表示原始字符串,其中转义字符不会被处理。

print(r"This is a raw string. \n and \t are not escaped.")

转义字符的使用

i=1
j=1
while j<=9:
    i=1
    while i<=j:
        print(f"{i}*{j}={i*j}\t",end="")
        i+=1
    print()
    j+=1
# 上面print种加\t不会出现按列排序的效果,是因为代码种print语句是循环输出的,
# print默认是打印一行,结尾自动换行,end传递一个空字符串,表示这个语句没结束。
能用\t的方式如下,再一个print语句里面
print("这是第一列\t这是第二列")

函数

在Python中,函数是一组执行特定任务的代码块,可以通过函数名来调用。先定义函数,后使用函数

以下是定义和使用函数的基本示例:

定义函数:

使用 def 关键字来定义函数,并在函数体内编写相应的代码块。

def greet(name):
    """
    这是一个简单的问候函数
    """
    print(f"Hello, {name}!")
    # 函数定义结束

# 调用函数
greet("Alice")

lambda函数定义(匿名函数)

格式:
lambda 参数:执行语句

add = lambda x, y: x + y
result = add(3, 5)
print(result)  # 输出:8

在这个例子中,lambda x, y: x + y 创建了一个匿名函数,接受两个参数 x 和 y,并返回它们的和。然后,将这个 lambda 函数赋给变量 add,最后调用 add(3, 5) 得到结果并打印。

参数设置

默认参数:

函数可以有默认参数,当调用函数时如果没有提供这些参数,将使用默认值。

def greet_with_default(name="Guest"):
    """
    这是一个带有默认参数的问候函数
    """
    print(f"Hello, {name}!")

# 调用函数
greet_with_default()        # 输出:Hello, Guest!
greet_with_default("Bob")   # 输出:Hello, Bob!
关键字参数:

关键字参数是通过参数名明确指定的,而不是通过它们在参数列表中的位置。以下是一个简单的例子:

def greet(name, greeting="Hello", punctuation="!"):
    """
    一个简单的示例函数,使用关键字参数。
    """
    print(greeting, name + punctuation)

# 使用关键字参数调用函数
greet(name="Alice", greeting="Hi", punctuation="!!!")
greet(name="Bob", punctuation="...")
可变参数:

函数可以接受可变数量的参数,使用 *args 来表示。args可变

def add_all(*args):
    """
    这是一个可变参数的加法函数
    """
    result = sum(args)
    return result

# 调用函数
total = add_all(1, 2, 3, 4, 5)
print(total)  # 输出:15

函数还可以接受键值对不同的参数传递,使用 **kwargs 来表示。kwargs可变

def print_info(**kwargs):
    """
    这是一个接受关键字参数的函数
    """
    for key, value in kwargs.items():
        print(f"{key}: {value}")

# 调用函数
print_info(name="Alice", age=25, city="Wonderland")
# 输出:
# name: Alice
# age: 25
# city: Wonderland

返回值:

函数可以返回一个值,使用 return 语句。

def add(a, b):
    """
    这是一个加法函数
    """
    result = a + b
    return result

# 调用函数并获取返回值
sum_result = add(3, 5)
print(sum_result)

如果函数没有使用return语句返回数据,那么函数有返回值吗?

Python中有一个特殊的字面量:None,其类型是:<class ‘NoneType’>无返回值的函数,实际上就是返回了: None这个字面量

python接收多个返回值
在Python中,一个函数可以通过 return 语句返回多个值。当调用这个函数时,可以使用多个变量来接收这些返回值。以下是一个简单的例子:

def multiple_values():
    return 1, 2, 3

# 调用函数并接收返回值
result1, result2, result3 = multiple_values()

# 打印接收到的值
print(result1)  # 输出: 1
print(result2)  # 输出: 2
print(result3)  # 输出: 3

另一种常见的方式是将返回的多个值存储在一个元组中,然后使用单个变量接收这个元组:

def multiple_values():
    return 1, 2, 3

# 调用函数并接收返回值
result = multiple_values()

# 打印整个元组
print(result)  # 输出: (1, 2, 3)

# 分别访问元组中的值
print(result[0])  # 输出: 1
print(result[1])  # 输出: 2
print(result[2])  # 输出: 3

函数的嵌套调用

函数可以嵌套调用,即在一个函数的代码块中调用另一个函数。这种嵌套调用的结构可以帮助你更好地组织和模块化代码。

def greet(name):
    """
    问候函数
    """
    return f"Hello, {name}!"

def welcome(name):
    """
    欢迎函数,调用问候函数
    """
    greeting = greet(name)
    return f"Welcome! {greeting}"

# 主程序
user_name = "Alice"
result = welcome(user_name)
print(result)

数据容器

在Python中,数据容器是一种用于存储和组织数据的数据结构。以下是一些常用的数据容器以及它们的基本用法:

列表(List):

列表是有序的、可变的序列,用于存储一组元素。

my_list = [1, 2, 3, "apple", "orange", True]
print(my_list)

元组(Tuple):

元组是有序的、不可变的序列,用于存储一组元素。如果想要传递的信息不被修改,就可使用元组。

my_tuple = (1, 2, 3, "apple", "orange", True)
print(my_tuple)

集合(Set):

集合是无序的、不重复的元素集,用于存储唯一的元素。

my_set = {1, 2, 3, "apple", "orange", True}
print(my_set)

字典(Dictionary):

字典是无序的键值对集合,用于存储通过键访问的值。

my_dict = {"name": "Alice", "age": 25, "city": "Wonderland"}
print(my_dict)

字典遍历方法

my_dict = {"name": "Alice", "age": 25, "city": "Wonderland"}

# 遍历键
print("Keys:")
for key in my_dict.keys():
    print(key)

# 遍历值
print("\nValues:")
for value in my_dict.values():
    print(value)

# 遍历键值对
print("\nItems:")
for key, value in my_dict.items():
    print(f"{key}: {value}")

字符串(String):

字符串是有序的字符序列,用于存储文本数据。
字符串切片

my_string = "Hello, Python!"
substring = my_string[7:13]
print(substring)  # 输出:Python

字符串长度

my_string = "Hello, Python!"
length = len(my_string)
print(length)  # 输出:15

字符串查找

my_string = "Hello, Python!"
index = my_string.find("Python")
print(index)  # 输出:7

字符串替换

my_string = "Hello, Python!"
new_string = my_string.replace("Python", "World")
print(new_string)  # 输出:Hello, World!

字符串分割

my_string = "apple,orange,banana"
fruits = my_string.split(",")
print(fruits)  # 输出:['apple', 'orange', 'banana']
字符串大小写转换:
my_string = "Hello, Python!"
lowercase = my_string.lower()
uppercase = my_string.upper()
print(lowercase)  # 输出:hello, python!
print(uppercase)  # 输出:HELLO, PYTHON!

判断字符串开头或结尾

my_string = "Hello, Python!"
starts_with_hello = my_string.startswith("Hello")
ends_with_python = my_string.endswith("Python!")
print(starts_with_hello)  # 输出:True
print(ends_with_python)   # 输出:True

数据容器的使用方法

访问元素

# 列表和元组
print(my_list[0])       # 输出:1
print(my_tuple[1])      # 输出:2
print(my_tuple[-1])     #输出:True,输出倒数第一个

# 字典
print(my_dict["age"])   # 输出:25

在Python中,取多层嵌套列表(多维列表)的元素可以通过多层索引进行。每个索引对应一个层级。以下是一个简单的例子,修改和删除以此类推。

# 二维列表
matrix = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]

# 访问二维列表的元素
element = matrix[1][2]  # 第二行(索引1),第三列(索引2)
print(element)  # 输出:6

修改元素

# 列表
my_list[2] = 100
print(my_list)          # 输出:[1, 2, 100, "apple", "orange", True]

# 元组是不可变的,不能修改元素
# 字典
my_dict["city"] = "New Wonderland"
print(my_dict)          # 输出:{'name': 'Alice', 'age': 25, 'city': 'New Wonderland'}

添加元素

# 列表
my_list.append("banana")
print(my_list)          # 输出:[1, 2, 100, "apple", "orange", True, "banana"]

# 字典
my_dict["gender"] = "Female"
print(my_dict)          # 输出:{'name': 'Alice', 'age': 25, 'city': 'New Wonderland', 'gender': 'Female'}

删除元素

# 列表
my_list.remove("apple")
print(my_list)          # 输出:[1, 2, 100, "orange", True, "banana"]

# 字典
del my_dict["age"]
print(my_dict)          # 输出:{'name': 'Alice', 'city': 'New Wonderland', 'gender': 'Female'}

其他列表操作方法如下
在这里插入图片描述

〖Python接口自动化测试实战篇④〗- 接口自动化测试详解 [接口测试] 是相对来说和我们的功能测试 [最为接近的一种自动化测试手段] ,所以我们首先来学习接口测试的内容。 实现接口的开发与接口的测试,在我们的思维上、想法上、面向的态度上都是不一样的。所以大家要有一个思维上的转换,要认识了解一下 接口测试到底是做什么的、它的功能、意义在哪里。... 阅读详情

相关推荐

保姆级教程:在Ubuntu 22.04上从零安装SUMO并运行第一个交通仿真

本教程详细介绍了在Ubuntu 22.04系统上从零安装SUMO交通仿真软件并运行第一个仿真的完整流程。涵盖环境准备、PPA源安装、核心组件验证、首次仿真案例运行以及进阶配置技巧,特别针对netedit路网编辑器和地图格式转换等实用工具进行重点讲解,帮助用户快速掌握SUMO在交通仿真领域的应用。

weixin_30546189的博客 422

python学习笔记

(可以理解为数组)可以容纳多分数据的数据类型,每份数据称为元素# 定义变量name = ['张三','李四','王五']# ['张三', '李四', '王五']# 定义空列表age = []print(age)# []# []列表的元素也可以是列表,即嵌套列表(二维数组)且元素类型不受限,不同类型的元素可以放置在同一个List当中。

2301_80362318的博客 843

VMD分子可视化实战:5个隐藏技巧让你的科研图像秒变顶刊级别

本文深入探讨了VMD分子可视化软件在科研图像美化中的5个高阶技巧,旨在帮助研究者将分子结构图提升至顶刊级别。内容涵盖原子色彩与材质的艺术化定制、沉浸式分子环境构建、专业构图与视角控制、数据驱动的动态可视化以及自动化工作流建立,通过精细的色彩映射、光照调整、周期性边界展示和脚本自动化,显著增强图像的科学叙事性与视觉冲击力。

weixin_29240343的博客 421

Python 基础 学习笔记

BHK 2302

基于STM32的多模态智能风扇控制系统设计与实现

本文详细介绍了基于STM32单片机的多模态智能风扇控制系统的设计与实现。系统集成了红外遥控、蓝牙手机控制及人体感应等多模态交互方式,通过PWM技术实现无级调速,并设计了安全优先的控制逻辑。文章从硬件选型、核心原理、软件编程到系统调试,提供了完整的实战指南,适合嵌入式开发爱好者学习与实践。

weixin_28285943的博客 238

MMRotate 详细使用教程

MMRotate 详细使用教程 做旋转目标检测,怎么可以不知道如何使用MMRotate呢! github链接: https://github.com/open-mmlab/mmrotate 1 安装 创建虚拟环境并激活 conda create -n mmrotate python=3.7 -y conda activate mmrotate 安装 PyTorch 和 torchvision conda install pytorch torchvision -c pytorch 注意:确保

Sylvia_Lan的博客 1万+

python 学习笔记

python 学习笔记

缥缈的云 专栏 687

新手如何结合pbootCMS和宝塔面板快速构建网站

摘要: 新手可通过pbootCMS(轻量CMS)和宝塔面板(可视化工具)快速搭建网站,无需命令行。步骤包括:1) 准备服务器(Linux/CentOS7.x)和域名;2) 安装宝塔面板并配置LNMP环境(PHP7.4+MySQL5.7);3) 创建网站目录,上传并解压pbootCMS源码,设置文件权限;4) 运行安装向导,填写数据库信息和管理员账号;5) 测试前台/后台功能,优化性能并绑定域名。全程约30-60分钟,宝塔简化运维,pbootCMS便于内容管理,适合零基础用户。注意定期更新和备份以保障安全。

qinzhenyan的博客 1642

Python学习笔记(全是干货)

Python学习笔记(全是干货) 【下载地址】Python学习笔记全是干货分享 本资源文件是《Python学习笔记(全是干货)》的完整内容,由作者根据自身学习编程的经验和体会精心整理而成。为了帮助大家更好地掌握Python编程,作者还录制了相应的系列视频教程《手把手教你学Python》 ...

gitblog_06637的博客 960

用友U8 API 二次开发:WebService封装7个核心DLL引用与U8Login登录避坑

本文详细介绍了用友U8 API二次开发中的WebService封装与U8Login登录优化实践。通过7个核心DLL的正确引用、U8Login登录机制的深度解析及IIS环境下的特殊处理方案,为开发者提供了一套高可用性的通用解决方案,助力企业实现ERP系统的高效集成与数字化转型。

weixin_42524171的博客 505

视觉测量实战:C#上位机+OpenCVSharp 实现工业零件尺寸自动检测(精准像素级,工业级可落地)

本次开发的上位机界面遵循工业现场操作规范简洁、直观、按钮大、文字清晰、参数可视化调节,操作人员为车间工人/质检员,无需复杂操作,所有控件均为WinForms原生控件,拖拽即可完成布局本次实战完成了C#上位机+OpenCVSharp 工业零件尺寸自动检测系统的完整开发,这套方案是工业视觉测量的标准落地方案,适配95%的规则几何零件的尺寸检测场景,从五金件、塑胶件到电子元件,全覆盖无死角。测量效率提升100倍、精度提升10倍、无人工误差、可适配流水线实时检测。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 849

Python3基础学习笔记资源下载

Python3基础学习笔记资源下载 去发现同类优质开源项目:https://gitcode.com/ 欢迎来到本仓库!这里提供了《Python3基础学习笔记.pdf》资源文件的下载。 简介 《Python3基础学习笔记.pdf》是一个专为Python初学者准备的宝贵学习资料。本笔记详细介绍了Python 3.4的基本语法和高级特性,内容系统全面,旨在帮助读者快速掌握Python编程的基础知识。 内...

gitblog_06706的博客 345

全志平台camera驱动开发(4)NVP6134芯片4路模拟视频BT656输入

前言 1. 调试平台: 全志V5/T7等有BT656或BT1120的并行接口,理论有DVP接口的一般都支持 2. NVP6134可使用多路视频同时输入 硬件连接 模拟camera1 模拟camera2 NVP6134 ------>NVCSI0 ...

jzwjzw19900922的博客 3532

Python3基础学习笔记资源获取:为零基础学习Python提供完美起点

Python3基础学习笔记资源获取:为零基础学习Python提供完美起点 去发现同类优质开源项目:https://gitcode.com/ Python作为一种流行的编程语言,其易学易用的特性吸引了许多初学者。今天,我们要为大家推荐一个开源项目——《Python3基础学习笔记资源获取》,它为Python初学者提供了一个宝贵的学习资源。以下是对这个项目的详细介绍。 项目介绍 《Python3基础学习...

gitblog_06701的博客 379

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

python学习笔记—— 基础语法

第二节 python基础语法 一、输出语句 1、print():打印语句 2、python3中表示内置函数,python2中表示打印语句。 3、print()语句作用: ①打印输出; ②可以打印输出数字、字符串、列表等数据; ③可接受多个参数,多个参数间用逗号隔开; ④可接受关键字参数(python2中不支持); ⑤可接受end参数,字符串默认"\n"。 二、输入语句 1、input(用户输入提...

change20008的博客 330

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Python学习笔记一

Python学习笔记一

xiaojkql的博客 324

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

【Python】Python学习笔记10

【代码】【Python】Python学习笔记10。

Treasure031227的博客 608

python数据可视化学习笔记

学习笔记,有待更新

weixin_45679438的博客 921

Python学习笔记

Python学习笔记 Python学习笔记(手写扫描版)

secretboys的博客 174

Python基础 · 学习笔记

创建自定义函数def functionname([形参]): # 赋值给某形参 则为其默认值,默认值必须在所有形参最后# 不给有默认值的形参传参时,该形参使用默认值参与运行# 定义形参为可变object时,使用*args,**kwargs"""定义的函数的注释说明""" # 有参数的情况下,在此处对定义的形参进行注释说明[return 执行结果(返回值)] # 定义的函数 全部 执行成功时 才执行的代码块,非必选项# 调用函数的时候,明确输出/打印 那就不需要返回值。

2301_77330550的博客 1347

Python学习笔记说明

Python学习笔记说明所有的Python学习笔记都是我在学习廖雪峰的官方网站中的Python教程过程中记录下来的,所以大部分内容会与廖大大教程中的内容相重合,我只是想自己再写一遍,加深印象,作为记录,以便日后复习。 如果大家想学习Python,可以去廖大大的网站。 最后感谢廖大大的无私奉献

link98 301

Python 学习笔记

这里转几份网上搜索到的学习笔记,帮助自己学习Python。

xuan0506的博客 126
上一篇: Qt用tcpsocket向E4440A频谱仪发送命令遇到的问题
下一篇: Qt多线程的使用
码龄5年的落魄程序员
博客等级 码龄8年 45粉丝 13原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值