Day05.构造程序逻辑

【学习心得笔记】Python100天-第一部分Day01-Day15 本文是个人对于项目的学习的一些心得和笔记,简单记录,如有不妥之处,欢迎批评指正。 阅读详情

构造程序逻辑



前言

学完了前面的几个章节后,我觉得有必要做一些练习来巩固之前所学的知识,虽然迄今为止我们学习的内容只是Python的冰山一角,但是这些内容已经足够我们来构建程序中的逻辑。对于编程语言的初学者的我来说,在学习了Python的核心语言元素(变量、类型、运算符、表达式、分支结构、循环结构等)之后,必须做的一件事情就是尝试用所学知识去解决现实中的问题,换句话说就是锻炼自己把用人类自然语言描述的算法(解决问题的方法和步骤)翻译成Python代码的能力,而这件事情必须通过大量的练习才能达成。

下面我想通过一些简单的例子,来巩固之前所学的Python知识,另一方面帮助我了解如何建立程序中的逻辑以及如何运用一些简单的算法解决现实中的问题。

(丑话说在前头)做完练习之后发现自己的水平的确很烂,然后大家的话还是看大佬版的吧。


一.例1:寻找水仙花

说明: 水仙花数也被称为超完全数字不变数、自恋数、自幂数、阿姆斯特朗数,它是一个3位数,该数字每个位上数字的立方之和正好等于它本身,例如: 1 3 + 5 3 + 3 3 = 153 1^3 + 5^3+ 3^3=153 13+53+33=153。

# 如寻找1000以内的水仙花数(小白版)
"""因为10的三次方就是1000了,所以在1000以内,
    三个数应该都小于10,且和为三位数,故首位从1开始"""
for i in range(1,10):
    for j in range(10):
        for k in range(10):
            if i**3 + j**3 + k**3 == 100*i + 10*j + k:
                print("%d,%d,%d 三个数构成水仙花数为%d"%(i,j,k,100*i + 10*j + k))

还是看下面这个吧。

# 大佬版
for num in range(100, 1000):
    low = num % 10
    mid = num // 10 % 10
    high = num // 100
    if num == low ** 3 + mid ** 3 + high ** 3:
        print(num)

对比上面的两种方法,小白版的话,肯定是以实现为第一,骚操作是看不到的(没技术咋骚嘛),就是直线思维嘛;大佬版的话,他好在结构扁平嘛,这在Python之禅上写过,就是能不嵌套尽量别嵌套,这样可读性也好点(我猜复杂度是不是也低点,现在还不知道这个怎么算的,个人感觉哈,还没学)。但是他这好像也是暴力检索吧?脑壳疼。

然后就是在上面的代码中,我们通过整除和求模运算分别找出了一个三位数的个位、十位和百位,这种小技巧在实际开发中还是常用的。用类似的方法,我们还可以实现将一个正整数反转,例如:将12345变成54321,代码如下所示。

num = int(input("请输入一个正整数:"))

reverse_num = 0
while num > 0:
    reverse_num = 10 * reverse_num + num % 10
    num //= 10

print("反转之后的数为:%d" % reverse_num)

所以他这种编程思想,泛化好像也好点。

二.例2:百钱白鸡问题

说明:百钱百鸡是我国古代数学家张丘建在《算经》一书中提出的数学问题:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?翻译成现代文是:公鸡5元一只,母鸡3元一只,小鸡1元三只,用100块钱买一百只鸡,问公鸡、母鸡、小鸡各有多少只?

"""
    就是一共100元,那么公鸡不会超过20只,母鸡不会超过33只,
    那小鸡不超过100只(因为一共才100只)。
"""
# 那最简单的应该是暴力检索吧(小白版)
for cock in range(0, 20):
    for hen in range(0, 33):
        for click in range(0, 100):
            if cock + hen + click == 100 and 5*cock + 3*hen + (1/3)*click == 100:
                print("公鸡有 %d 只,母鸡有 %d 只,小鸡有 %d 只!" % (cock,hen,click))

# 公鸡有 0 只,母鸡有 25 只,小鸡有 75 只!
# 公鸡有 4 只,母鸡有 18 只,小鸡有 78 只!
# 公鸡有 8 只,母鸡有 11 只,小鸡有 81 只!
# 公鸡有 12 只,母鸡有 4 只,小鸡有 84 只!
# 与上面类似(但这个少一层循环嘛,还是好点。)
for x in range(0, 20):
    for y in range(0, 33):
        z = 100 - x - y
        if 5 * x + 3 * y + z / 3 == 100:
            print('公鸡: %d只, 母鸡: %d只, 小鸡: %d只' % (x, y, z))

# 公鸡: 0只, 母鸡: 25只, 小鸡: 75只
# 公鸡: 4只, 母鸡: 18只, 小鸡: 78只
# 公鸡: 8只, 母鸡: 11只, 小鸡: 81只
# 公鸡: 12只, 母鸡: 4只, 小鸡: 84只

上面使用的方法叫做穷举法,也称为暴力搜索法,这种方法通过一项一项的列举备选解决方案中所有可能的候选项并检查每个候选项是否符合问题的描述,最终得到问题的解。这种方法看起来比较笨拙,但对于运算能力非常强大的计算机来说,通常都是一个可行的甚至是不错的选择,而且问题的解如果存在,这种方法一定能够找到它。

三.例3:CRAPS赌博游戏。

说明: CRAPS又称花旗骰,是美国拉斯维加斯非常受欢迎的一种的桌上赌博游戏。该游戏使用两粒骰子,玩家通过摇两粒骰子获得点数进行游戏。简单的规则是:玩家第一次摇骰子如果摇出了7点或11点,玩家胜;玩家第一次如果摇出2点、3点或12点,庄家胜;其他点数玩家继续摇骰子,如果玩家摇出了7点,庄家胜;如果玩家摇出了第一次摇的点数,玩家胜;其他点数,玩家继续要骰子,直到分出胜负。

我们设定玩家开始游戏时有1000元的赌注,游戏结束的条件是玩家输光所有的赌注。

# 小白版(感觉应该还是有BUG,或者还是没有完整完成要求,总感觉怪怪的。)
import random

init_wager = 1000

while init_wager > 0:
    wager = int(input("请输入您的赌注(小于%d):" % init_wager))
    guess_one = random.randint(1, 12)
    if guess_one == 7|11:
        init_wager += wager
        print("您获胜! 当前还有赌注:%d" % init_wager)
    elif guess_one == 2|3|12:
        init_wager -= wager
        print("庄家胜! 当前还有赌注:%d" % init_wager)
    else:
        print("游戏继续!当前还有赌注:%d" % init_wager)

    while init_wager > 0:
        if init_wager >= wager:
            guess = random.randint(1, 12)

            if guess == 7:
                init_wager -= wager
                print("庄家胜! 当前还有赌注:%d" % init_wager)
                break
            elif guess == guess_one:
                init_wager += wager
                print("您获胜! 当前还有赌注:%d" % init_wager)
                break
            else:
                print("游戏继续!当前还有赌注:%d" % init_wager)

        if init_wager == 0:
            print("您破产了,游戏结束!")
            break
    
    if init_wager == 0:
            print("您破产了,游戏结束!")
            break
# 大佬版
from random import randint
   
money = 1000
while money > 0:
    print('你的总资产为:', money)
    needs_go_on = False
    while True:
        debt = int(input('请下注: '))
        if 0 < debt <= money:
            break
    
    first = randint(1, 6) + randint(1, 6)
    print('玩家摇出了%d点' % first)
    if first == 7 or first == 11:
        print('玩家胜!')
        money += debt
    elif first == 2 or first == 3 or first == 12:
        print('庄家胜!')
        money -= debt
    else:
        needs_go_on = True
    
    while needs_go_on:
        needs_go_on = False
        current = randint(1, 6) + randint(1, 6)
        print('玩家摇出了%d点' % current)
        if current == 7:
            print('庄家胜')
            money -= debt
        elif current == first:
            print('玩家胜')
            money += debt
        else:
            needs_go_on = True

print('你破产了, 游戏结束!')

感觉上面代码用到最好的一个地方就是让 “needs_go_on = False”,这样可以在下面一个while循环里面使用,验证此时的状态是否需要进行第二次判断以及后面的判断(多轮摇骰子)。第二就是“first = randint(1, 6) + randint(1, 6)”。因为按照概率来说,1-12和 两个1-6相加还是有些区别的,与实际有一定区别。第三就是它的显示比较多,就是摇骰子的点数都会实时公布,这样的话,游戏过程会更加清楚些。

四.练习

练习1:生成斐波那契数列的前20个数。

说明: 斐波那契数列(Fibonacci sequence),又称黄金分割数列,是意大利数学家莱昂纳多·斐波那契(Leonardoda Fibonacci)在《计算之书》中提出一个在理想假设条件下兔子成长率的问题而引入的数列,所以这个数列也被戏称为"兔子数列"。斐波那契数列的特点是数列的前两个数都是1,从第三个数开始,每个数都是它前面两个数的和,形如:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, …。斐波那契数列在现代物理、准晶体结构、化学等领域都有直接的应用。

def fibonacci(n):
    a, b = 0, 1
    for _ in range(n):
        a, b = b, a + b
        print(a, end=' ')
        
fibonacci(20)

# 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765 

练习2:找出10000以内的完美数。

说明: 完美数又称为完全数或完备数,它的所有的真因子(即除了自身以外的因子)的和(即因子函数)恰好等于它本身。例如:6( 6 = 1 + 2 + 3 6=1+2+3 6=1+2+3)和28( 28 = 1 + 2 + 4 + 7 + 14 28=1+2+4+7+14 28=1+2+4+7+14)就是完美数。完美数有很多神奇的特性,有兴趣的可以自行了解。

# 1 应该不算完美数吧?那我就从2开始好了。(暴力检索==小白?)
for i in range(2, 10000):
    perfect = 0
    for j in range(1, i):
        if i % j == 0:
            perfect += j
    if i == perfect :
        print(perfect)
# 大佬版
import math

for num in range(1, 10000):
    result = 0
    for factor in range(1, int(math.sqrt(num)) + 1):
        if num % factor == 0:
            result += factor
            if factor > 1 and num // factor != factor:
                result += num // factor
    if result == num:
        print(num)

好就好在了这个下面几点:

  • 直接用"int(math.sqrt(num)) + 1",这样检索范围少了好多。
  • “if factor > 1 and num // factor != factor: result += num // factor”,这样就是可以直接快速的得到大于"int(math.sqrt(num)) + 1"的因数。(这个说真的,真想不到。然后速度比上面的确快了很多。)

练习3:输出100以内所有的素数。

说明: 素数指的是只能被1和自身整除的正整数(不包括1)。

# 小白版(感觉没啥美感,一天天的暴力检索。。。。)
import math

for i in range(2, 100):
    num = 0
    for j in range(2, int(math.sqrt(i)) + 1):
        if i % j == 0:
            num += 1
        else:
            num += 0

    if num == 0:
        print(i, end=" ")

# 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 .
# 我傻了,还统计下来干嘛,出现因数直接下一个不好嘛。。。这样太浪费时间空间了。
# 大佬版
import math

for num in range(2, 100):
    is_prime = True
    for factor in range(2, int(math.sqrt(num)) + 1):
        if num % factor == 0:
            is_prime = False
            break
    if is_prime:
        print(num, end=' ')

好就好在,这里出现了因数就break,比上面的快很多。


总结

还是真实的案例操作,血淋淋的教育了我一下,其实学的很烂的。这也告诫我后面的程序逻辑得多多磨炼。

溜了遛了,脑壳疼。Loading(05/100)。。。。。。

我从Python新手到大师的百天之路(内附学习资源) 给大家推荐一个Python资源。 有位名叫骆昊 (jackfrued) 的资深程序员,为大家规划了一条从“从新手到大师”的百天之路。 从全方位熟悉语言,到Python的进阶用法,再到天南地北的实战攻略:只要沿着这条路走下去,就都会遇到的。 这个项目已经在GitHub摘下8100星。 骆先生还在日程表的上方,温柔地鼓励了大家: Python是一个“优雅”、“明确”、“简单”的编程语言。... 阅读详情

相关推荐

美团mtgsig 3.1.0算法还原:从加密入口到d1生成的完整链路拆解

本文详细拆解了美团mtgsig 3.1.0签名算法的完整逆向过程。通过定位加密入口函数eH,理清a6、a5、a8到d1的生成依赖链,并运用插桩技术,在JSVMP混淆环境下逐步还原了核心参数的生成逻辑,为逆向工程实践提供了清晰的纯算还原方法论。

oo7890的博客 777

偷学Python第六天:构造程序逻辑

偷摸学Python第六天:构造程序逻辑 目标:可以用Python做一些简单的数据分析。 坚持完成自己的目标!勿忘初心~ 今日学习目标 构造代码逻辑,练习经典案例 学习内容 尝试用所学的Python知识来解决现实当中的问题,也就是把人类自然语言描述的算法,翻译成Python语言 经典的案例 寻找水仙花数 说明:水仙花数也被称为超完全数字不变数、自恋数、自幂数、阿姆斯特朗数,它是一个3位...

一碗周 470

AI搜索优化(GEO)实战指南:抢占智能对话流量入口

AI SEO,是针对生成式AI平台(如DeepSeek、豆包、Kimi等)的优化策略,旨在通过适配AI算法对内容的理解和引用逻辑,提升品牌在AI生成答案中的可见性与权威性,从而在对话式搜索场景中抢占流量入口。:强化内容经验性(Experience)、专业性(Expertise)、权威性(Authoritativeness)、可信度(Trustworthiness)内容需避免夸大描述,提供可验证的细节(如数据、用户评价)。

Baixue5209的博客 6780

Python100天打卡-Day05 - 总结与练习

from random import randint money = 1000 while money > 0: print('你的总资产为:', money) needs_go_on = False while True: debt = int(input('请下注: ')) if debt > 0 and debt...

wxl1999的博客 461

【机器人开发】四足机械狗(并联结构)URDF建模与Simscape仿真全流程解析

本文详细解析了四足机械狗(并联结构)从URDF建模到Simscape仿真的全流程开发。内容涵盖SolidWorks建模要点、URDF文件导出与优化、Matlab/Simscape环境搭建,以及并联机构特有的运动控制和步态规划实现,为机器人开发者提供了一套完整的解决方案。

weixin_30642561的博客 529

Android 车载开发深度解析:CarPropertyManager 核心机制与实践指南

摘要: Android Automotive OS中,CarPropertyManager作为车载信息娱乐系统的核心组件,连接应用层与车辆硬件(如车速、油量等),其架构基于分层设计(App→CarAPI→VHAL→ECU),采用发布-订阅模式实现高效数据通信。通过HIDL/AIDL跨进程交互及共享内存优化,延迟可降至2ms以下。安全机制包括分级权限控制(VISIBLE/PROTECTED/SYSTEM_RESTRICTED)和HMAC防篡改。开发时需注意监听器生命周期管理、事件合并降负载及低功耗适配。

郑伟强dev的专栏 344

Python100days学习笔记--05构造程序逻辑

05构造程序逻辑 05构造程序逻辑 一些经典的案例和习题。 经典的例子 1. 寻找水仙花数。 说明:水仙花数也被称为超完全数字不变数、自恋数、自幂数、阿姆斯特朗数,它是一个3位数,该数字每个位上数字的立方之和正好等于它本身,例如:13+53+33=1531^3 + 5^3+ 3^3=15313+53+33=153。 """ 找出所有水仙花数 """ for num in range(100, 1000): low = num % 10 mi

qq_41166278的博客 298

使用 MediaPipe 身体跟踪构建不良身体姿势检测和警报系统

详细介绍如何使用 MediaPipe 身体跟踪构建不良身体姿势检测和警报系统,并附实现的源码下载链接

DT程序员的博客 1815

day-005--构造程序逻辑

构造程序逻辑 1.练习清单 寻找“水仙花数”。 寻找“完美数”。 “百钱百鸡”问题。 生成“斐波拉切数列”。 Craps赌博游戏。 2.直接上代码 import math from random import randint import time # 水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperf...

weixin_36628778的博客 513

Nexys4DDR+OV7670实现图像灰度显示系统嵌入式

通过对硬件平台的准备、Vivado工程配置、OV7670驱动程序的编写、图像灰度处理算法的设计以及系统集成与测试,我们成功实现了一个基于嵌入式系统的图像处理应用。当系统运行时,OV7670摄像头模块将采集到的图像传输到FPGA芯片中,然后通过图像灰度处理算法将彩色图像转换为黑白图像,并在显示设备上进行显示。OV7670摄像头模块的驱动程序是实现图像采集的核心。以上代码中,我们使用了Xilinx提供的XGpio和Xil_In32函数来进行OV7670摄像头数据的读取和GPIO的初始化。OV7670驱动程序。

WangWEel的博客 338

OpenClaw与传统AI助手区别,为什么要本地部署

OpenClaw是一款本地部署的开源AI助手框架,与ChatGPT等云端服务相比具有显著优势。它支持完全离线运行,数据隐私性高,所有信息都存储在本地设备上,避免了云端服务的隐私风险。OpenClaw采用模块化设计,可自由定制功能,且无需支付订阅费用,只需一次性硬件投入。推荐在树莓派、迷你主机等设备上部署,最低配置仅需1核CPU和1GB内存。安装过程包含系统初始化、依赖安装、配置设置等步骤,支持通过systemd服务实现开机自启和后台运行。特别适合注重数据安全、需要离线使用或预算有限的用户群体。

一键难忘的博客 1690

python构造程序逻辑_day05

python程序逻辑体验

slb190623的博客 1039

大模型新闻摘要生成质量评估工具

大模型新闻摘要生成质量评估工具 关键词:大模型、新闻摘要、质量评估、自然语言处理、算法 摘要:本文将探讨大模型新闻摘要生成质量评估工具的设计与应用。首先介绍大模型新闻摘要生成的背景和问题,然后深入分析质量评估的难点和重要性,接着介绍大模型的

AI天才研究院 828

Python—Day05.构造程序逻辑

Github: GitHub -https://github.com/jackfrued/Python-100-Days (骆昊) Gitclone: https://gitee.com/viitii/Python-100-Days 2021.10.17 Day05.构造程序逻辑 1.百钱白鸡问题 张丘建《算经》中提出,翻译成现代文是:公鸡5元一只,母鸡3元一只,小鸡1元三只,用100块钱买一百只鸡,问公鸡、母鸡、小鸡各有多少只? ...

qq_46256912的博客 338

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

python-DAY05构造程序逻辑

1.水仙花数 2.完美数 3.五人分鱼 4.Fibonacci 5.回文数

sinat_36515789的博客 371

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Day05 - 构造程序逻辑

日期:2021年1月22日 今天是学习Python的第五天,前四天的学习已经可以构建基本简单程序来解决一些现实问题了,今天的目标是通过一些典型例子来巩固前面的知识,以前学C的时候就写过了,只是换了Python来写。 学习用的教材是GitHub上骆昊编写的《Python - 100天从新手到大师》 所有编写的源代码均放在GitHub上:https://github.com/svip886/Python_learning 一、寻找水仙花数 水仙花数为3为数,其每个位上数字的立方和等于它本身。eg:1³+5.

Paranoid's blog 308

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

python_100天——DAY05_构造程序逻辑

day05构造程序逻辑

Xiaowu2048的博客 139

【搬运自用】Python 构造程序逻辑 - 100天从新手到大师Day05(GitHub)

搬运Github热门项目Python从新手到大师Day05内容,仅供自己学习和参考

weixin_57560711的博客 217

Python100天学习笔记 Day01-05

Python - 100天从新手到大师 项目地址:https://github.com/jackfrued/Python-100-Days 本文代码皆为自己手撸,标程请参考每一节自带的code 目录 Python - 100天从新手到大师 Day 01 初识Python Day 02 语言元素 Day 03 分支结构 Day 04 循环结构 Day 05 构造程序逻辑 Day ...

lrxcmwy2的博客 1125

【自学python100天】D5-构造程序逻辑

https://github.com/jackfrued/Python-100-Days/blob/master/Day01-15/05.%E6%9E%84%E9%80%A0%E7%A8%8B%E5%BA%8F%E9%80%BB%E8%BE%91.md 锻炼自己把用人类自然语言描述的算法(解决问题的方法和步骤)翻译成Python代码的能力 快捷键: #%%分割cell CTRL + en...

RainbowCoral的博客 658

python求幂函数_Python学习日记2(函数和模块)

学习历程按照Github上jackfrued的100天学习python的进度来进行,再辅上一些自己查找的相关资料。对应传送门:https://github.com/jackfrued/Python-100-Days/tree/master/Day05 构造程序逻辑1.在python中,/代表浮点数除法,//代表整数除法2.python求幂方法:(1) math模块中的pow函数 (2) 使用**运...

weixin_39932947的博客 1212

Python学习日记05

目录Day.051.元组2.构造程序逻辑的练习3.今日总结 Day.05 2020.02.23 今天主要学习的内容是元组以及训练七个练习题巩固之前所学的基础。 1.元组 元组的创建方式和列表一样,只不过列表是方括号[],而元组是圆括号(),最大的区别是:元组中的元素不可更改,而列表可以。其中需要注意的共有两点:其一,虽然元祖中的元素不可修改,但是可以通过加号+来对元组之间进行连接组合,如:tup3...

一只奋斗中的本科生 534

教你学习: Python-100-Days-05/06合集 函数

教你学习: Python-100-Days-05/06合集 构造程序逻辑函数 本项目是参考项目内容,进行个人理解,和原有项目有出入,如想了解详情,请自行百度去搜索项目 学完前面几章,我们也开始一点点接触python的冰山一角,学习了核心元素(变量,类型,运算符,表达式,分支结构,循环结构)之后,我们要开始通过学过的知识,来解决现实中的一些问题 原项目day05是一些练习题,我这里...

程序员XW 210

c++ asc chr 函数_教你学Python05/06合集,带你写第一行函数

教你学习: Python-100-Days-05/06合集 构造程序逻辑函数本项目是参考项目内容,进行个人理解,和原有项目有出入,如想了解详情,请自行百度去搜索项目学完前面几章,我们也开始一点点接触python的冰山一角,学习了核心元素(变量,类型,运算符,表达式,分支结构,循环结构)之后,我们要开始通过学过的知识,来解决现实中的一些问题原项目day05是一些练习题,我这里就忽略了,和day06合...

weixin_39928099的博客 163

【搬运自用】Python目录及初识Python - 100天从新手到大师Day01(GitHub)

搬运Github热门项目Python从新手到大师Day01内容,仅供自己学习和参考

weixin_57560711的博客 818
上一篇: Day04.循环结构
下一篇: Day06.函数和模块的使用
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值