按照文件名最后数字进行排序

举报
tsinghuazhuoqing 发表于 2021/12/26 00:03:18 2021/12/26
【摘要】 简 介: 修改了ppt2csdn中存在的文件名称排序错误。通过提取文件名称最后面的数字字符串来作为文件排序的关键字,可以消除PPT文件在转存成JPEG文件时对应的数码编码方式。 关键词: PPT,J...

简 介: 修改了ppt2csdn中存在的文件名称排序错误。通过提取文件名称最后面的数字字符串来作为文件排序的关键字,可以消除PPT文件在转存成JPEG文件时对应的数码编码方式。

关键词 PPTJPEGPython排序

文件排序
文章目录
PPT,PDF转存JPEG
PDF,PPT转存
数字格式不同
带来的问题
修改排序程序
修改后的代码
修改后输出结果
总 结

 

§01 件排序


一、PPT,PDF转存JPEG

  通常情况下,需要将PDF,PPT文件形成图片导入CSDN作为文档存储。

1、PDF,PPT转存数字格式不同

  但是PDF,PPT在转存成JPEG文件的时候,文件名称命名不统一。对于PDF文件,它的文件后缀数字是等长的数字,比如对100页之内的文件, 最后的数字则是以“_0x”为标注。

▲ 图1.1.1 PDF文件存储为JPEG时文件名称

▲ 图1.1.1 PDF文件存储为JPEG时文件名称

  而PPT文件在转存成JPEG文件的时候,它的文件后缀中的数字是不定长的,而是从1 开始自然增长。

▲ 图1.1.2 PPT文件转存成JPEG文件后缀数字编码方式

▲ 图1.1.2 PPT文件转存成JPEG文件后缀数字编码方式

2、带来的问题

  在使用ppt2csdn将目录中的文件发送到CSDN的Markdown编辑器的时候,排序对于PDF文件是正确的。但是对于PPT的数字编码方式出现问题。

(1)排序Python代码

def picdir2csdn(dirstr, width, sideflag):
    ispicfile = lambda s : 1 if s.split('.')[-1].upper() == 'JPG' or \
                              s.split('.')[-1].upper() == 'BMP' or \
                              s.split('.')[-1].upper() == 'PNG' else 0

    pptimages = [s for s in os.listdir(dirstr) if ispicfile(s) == 1]
    s = sorted(pptimages, reverse=False)

    printf('Total Page Number : %d'%len(s))

    for f in s:
        fname = os.path.join(dirstr, f)
        printf(fname)
#        pasteimg2csdn(fname, width, sideflag)
#        time.sleep(.5)

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

(2)输出结果

  下面是排序输出结果,可以看到如果按照这个顺序,将JPEG导入CSDN的Markdown编辑器,会出现顺序错位。

Total Page Number : 35
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片1.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片10.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片11.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片12.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片13.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片14.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片15.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片16.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片17.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片18.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片19.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片2.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片20.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片21.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片22.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片23.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片24.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片25.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片26.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片27.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片28.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片29.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片3.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片30.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片31.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片32.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片33.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片34.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片35.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片4.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片5.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片6.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片7.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片8.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片9.JPG

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36

二、修改排序程序

  下面需要对于ppt2csdn中的文件排序进行修改。

1、修改后的代码

  在对文件名进行排序前,先提取文件名中最后的数字字符串。然后在根据该字符串的大小进行文件名称的排序。

#------------------------------------------------------------
def filename2num(fs):
    for i in range(len(fs)):
        if not fs[-(i+1):].isdigit():
            return int(fs[-i:])

    return int(fs)

#------------------------------------------------------------
def picdir2csdn(dirstr, width, sideflag):
    ispicfile = lambda s : 1 if s.split('.')[-1].upper() == 'JPG' or \
                              s.split('.')[-1].upper() == 'BMP' or \
                              s.split('.')[-1].upper() == 'PNG' else 0

    pptimages = [s for s in os.listdir(dirstr) if ispicfile(s) == 1]
#    s = sorted(pptimages, reverse=False)

    pagenum = [filename2num(ss.split('.')[0]) for ss in pptimages]
    pagesort = sorted(zip(pptimages, pagenum), reverse=False, key=lambda x:x[1])

    s = [p[0] for p in pagesort]

    printf('Total Page Number : %d'%len(s))

    for f in s:
        fname = os.path.join(dirstr, f)
        printf(fname)
        pasteimg2csdn(fname, width, sideflag)
        time.sleep(.5)

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29

2、修改后输出结果

  下面是修改后文件打印排序。

Total Page Number : 35
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片1.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片2.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片3.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片4.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片5.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片6.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片7.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片8.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片9.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片10.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片11.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片12.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片13.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片14.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片15.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片16.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片17.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片18.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片19.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片20.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片21.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片22.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片23.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片24.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片25.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片26.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片27.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片28.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片29.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片30.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片31.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片32.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片33.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片34.JPG
D:\Temp\JPEG\人工智能助力全国大学智能车竞赛\幻灯片35.JPG

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36

 

  结 ※


  改了ppt2csdn中存在的文件名称排序错误。通过提取文件名称最后面的数字字符串来作为文件排序的关键字,可以消除PPT文件在转存成JPEG文件时对应的数码编码方式。


● 相关图表链接:

#!/usr/local/bin/python
# -*- coding: gbk -*-
#============================================================
# PPT2CSDN.PY                     -- by Dr. ZhuoQing 2021-01-04
#
# Usage: ppt2csdn w# s# #2
#        w800  : Set the width =800
#        s0,s1 : No side, has side
#        #2    : filename01
#
# Note: Copy the PPT file or related image directory into clipboard,
#       then use ppt2csdn to paste all the image into csdn.
#
# Install: pip install python-pptx-interface
#
#============================================================

from head import *
from PIL import Image, ImageDraw
from io import BytesIO
import win32clipboard
from pptx_tools import utils

#------------------------------------------------------------
num0len = 1                         # For file tail number 01 length

#------------------------------------------------------------
def extractfile(fname, imagedir=r'd:\temp\pptpng'):

    if os.path.isdir(imagedir):
        for f in os.listdir(imagedir):
            os.remove(os.path.join(imagedir, f))


    pptfile = fname
    png_folder = imagedir
    utils.save_pptx_as_png(png_folder, pptfile, overwrite_folder=True)

#------------------------------------------------------------
csdn_window = '写文章-CSDN博客'


#------------------------------------------------------------
def send_to_clipboard(clip_type, data):
    win32clipboard.OpenClipboard()
    win32clipboard.EmptyClipboard()
    win32clipboard.SetClipboardData(clip_type, data)
    win32clipboard.CloseClipboard()


#------------------------------------------------------------
def pasteimg2csdn(fname, width=800, sideflag=1):
    image = Image.open(fname)


    if sideflag > 0:
        draw = ImageDraw.Draw(image)
        draw.rectangle((0, 0, image.size[0]-1, image.size[1]-1), width=sideflag, outline='#c0c0c0')


    output = BytesIO()
    image.convert('RGB').save(output, 'BMP')
    data = output.getvalue()[14:]
    output.close()
    send_to_clipboard(win32clipboard.CF_DIB, data)

    #--------------------------------------------------------
    printf("\a")

    tspsendwindowkey(csdn_window, 'v', control=1,noreturn=1)
    time.sleep(2)

    #--------------------------------------------------------

    for i in range(20):
        time.sleep(1)
        readdata = tspread()

        if readdata[2] == 1: break
        if readdata[7] != 0: break
        if readdata[8] != 0: exit()
        if readdata[9] != 0: exit()

        tspsendwindowkey(csdn_window, 'c', control=1,noreturn=1)
        if clipboard.paste().find('在这里插入图片描述') >= 0:
            tspbeep(1500, 200)
            tspsendwindowkey(csdn_window, 'ac', control=1,noreturn=1)
            time.sleep(.5)
            break

        printf('\a')


    pastestr = clipboard.paste().split('![在这里插入图片描述](')

    if len(pastestr) < 2:
        printf("Can not find the ![Insert picture] discriptor !\a")
        exit()

    time.sleep(.25)
    #--------------------------------------------------------
    tspsendwindowkey(csdn_window, 'z', control=1,noreturn=1)
    pastestr = pastestr[1].split(')')[0].split('?')[0]


    widthstr = '=%dx'%width

    if width < 10: widthstr = ''

    pic_pos_str = 'pic_center'
    insertstring = ''
    morestring = ''

    insertstring = '![%s](%s#%s %s)\r\n'%(insertstring, pastestr, pic_pos_str, widthstr)


    clipboard.copy(insertstring)
    time.sleep(.5)
    tspsendwindowkey(csdn_window, 'v', control=1)

    time.sleep(.2)
    clipboard.copy('')

    tspfocuswindow(csdn_window)


#------------------------------------------------------------
def imagedir2csdn(imgdir, width, sideflag):
    global num0len

    pptimages = os.listdir(imgdir)

    #--------------------------------------------------------
    printf("Image Directory:%s"%imgdir)

    if len(pptimages) == 0:
        printf("No Image in %s!"%imgdir)
        printf("\a")
        return

    pptnames = pptimages[0].split('.')

    if len(pptnames) < 2:
        printf("Images have no extension !\a")
        return

    #--------------------------------------------------------
    pptname = []
    pptname.append('.'.join(pptnames[:-1]))
    pptname.append(pptnames[-1])

    extstr = pptname[1]

    #--------------------------------------------------------
    prefix = pptname[0][:-1]

    if len(pptname[0]) > 1:
        if pptname[0][-2:].isdigit():
            prefix = pptname[0][:-2]

    if len(pptname[0]) > 2:
        if pptname[0][-3:].isdigit():
            prefix = pptname[0][:-3]

    if len(pptname[0]) > 3:
        if pptname[0][-4:].isdigit():
            prefix = pptname[0][:-4]

    #--------------------------------------------------------
    fname = "%s%d.%s"%(prefix, 1, extstr)

    if num0len == 2:
        fname = "%s%02d.%s"%(prefix, 1, extstr)
    elif num0len == 3:
        fname = "%s%03d.%s"%(prefix, 1, extstr)
    elif num0len == 4:
        fname = "%s%04d.%s"%(prefix, 1, extstr)
    elif num0len == 5:
        fname = "%s%05d.%s"%(prefix, 1, extstr)
    elif num0len == 6:
        fname = "%s%06d.%s"%(prefix, 1, extstr)
    elif num0len == 7:
        fname = "%s%07d.%s"%(prefix, 1, extstr)
    elif num0len == 8:
        fname = "%s%08d.%s"%(prefix, 1, extstr)
    elif num0len == 9:
        fname = "%s%09d.%s"%(prefix, 1, extstr)
    elif num0len == 10:
        fname = "%s%010d.%s"%(prefix, 1, extstr)

    fname = os.path.join(imgdir, fname)

    if num0len == 1:
        if not os.path.isfile(fname):
            fname = "%s%02d.%s"%(prefix, 1, extstr)
            fname = os.path.join(imgdir, fname)
            num0len = 2

        if not os.path.isfile(fname):
            fname = "%s%03d.%s"%(prefix, 1, extstr)
            fname = os.path.join(imgdir, fname)
            num0len = 3

        if not os.path.isfile(fname):
            fname = "%s%04d.%s"%(prefix, 1, extstr)
            fname = os.path.join(imgdir, fname)
            num0len = 4


    if not os.path.isfile(fname):
        for f in pptimages:
            fname = os.path.join(imgdir, f)
            printf(fname)
            pasteimg2csdn(fname, width, sideflag)
            time.sleep(.5)

        return


    #--------------------------------------------------------
    for i in range(len(pptimages)):
        fname = "%s%d.%s"%(prefix, i+1, extstr)

        if num0len == 2:
            fname = "%s%02d.%s"%(prefix, i+1, extstr)
        elif num0len == 3:
            fname = "%s%03d.%s"%(prefix, i+1, extstr)
        elif num0len == 4:
            fname = "%s%04d.%s"%(prefix, i+1, extstr)
        elif num0len == 5:
            fname = "%s%05d.%s"%(prefix, i+1, extstr)
        elif num0len == 6:
            fname = "%s%06d.%s"%(prefix, i+1, extstr)
        elif num0len == 7:
            fname = "%s%07d.%s"%(prefix, i+1, extstr)
        elif num0len == 8:
            fname = "%s%08d.%s"%(prefix, i+1, extstr)
        elif num0len == 9:
            fname = "%s%09d.%s"%(prefix, i+1, extstr)
        elif num0len == 10:
            fname = "%s%010d.%s"%(prefix, i+1, extstr)

        fname = os.path.join(imgdir, fname)
        printf(fname)

        if not os.path.isfile(fname):
            printf('Can not file %s!'%fname)
            break

        pasteimg2csdn(fname, width, sideflag)
        time.sleep(.5)

    #--------------------------------------------------------

#------------------------------------------------------------
def filename2num(fs):
    for i in range(len(fs)):
        if not fs[-(i+1):].isdigit():
            return int(fs[-i:])

    return int(fs)

#------------------------------------------------------------
def picdir2csdn(dirstr, width, sideflag):
    ispicfile = lambda s : 1 if s.split('.')[-1].upper() == 'JPG' or \
                              s.split('.')[-1].upper() == 'BMP' or \
                              s.split('.')[-1].upper() == 'PNG' else 0


    pptimages = [s for s in os.listdir(dirstr) if ispicfile(s) == 1]
#    s = sorted(pptimages, reverse=False)

    pagenum = [filename2num(ss.split('.')[0]) for ss in pptimages]
    pagesort = sorted(zip(pptimages, pagenum), reverse=False, key=lambda x:x[1])

    s = [p[0] for p in pagesort]

    printf('Total Page Number : %d'%len(s))

    for f in s:
        fname = os.path.join(dirstr, f)
        printf(fname)
        pasteimg2csdn(fname, width, sideflag)
        time.sleep(.5)

#------------------------------------------------------------
filedir = ''
tspdropfile2pastetext()
filedirsect = clipboard.paste().split()

if len(filedirsect) > 0:
    filedir = filedirsect[0]
else:
    printf("Usage: csdnppt filename[filedir]\a")
    exit()


#------------------------------------------------------------
width=800
sideflag = 1

for s in sys.argv[1:]:
    if s[0] == '#':
        num0len = int(s[1:])
    elif s[0] == 'w' or s[0] == 'W':
        width = int(s[1:])
    elif s[0] == 's' or s[0] == 'S':
        sideflag = int(s[1:])


#------------------------------------------------------------
if os.path.isfile(filedir):
    extractfile(filedir)
    filedir = r'd:\temp\pptpng'

if not os.path.isdir(filedir):
    printf("Can not find directory : %s"%filedir)

#imagedir2csdn(filedir, width, sideflag)
picdir2csdn(filedir, width, sideflag)

#------------------------------------------------------------
#        END OF FILE : PPT2CSDN.PY
#============================================================

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209
  • 210
  • 211
  • 212
  • 213
  • 214
  • 215
  • 216
  • 217
  • 218
  • 219
  • 220
  • 221
  • 222
  • 223
  • 224
  • 225
  • 226
  • 227
  • 228
  • 229
  • 230
  • 231
  • 232
  • 233
  • 234
  • 235
  • 236
  • 237
  • 238
  • 239
  • 240
  • 241
  • 242
  • 243
  • 244
  • 245
  • 246
  • 247
  • 248
  • 249
  • 250
  • 251
  • 252
  • 253
  • 254
  • 255
  • 256
  • 257
  • 258
  • 259
  • 260
  • 261
  • 262
  • 263
  • 264
  • 265
  • 266
  • 267
  • 268
  • 269
  • 270
  • 271
  • 272
  • 273
  • 274
  • 275
  • 276
  • 277
  • 278
  • 279
  • 280
  • 281
  • 282
  • 283
  • 284
  • 285
  • 286
  • 287
  • 288
  • 289
  • 290
  • 291
  • 292
  • 293
  • 294
  • 295
  • 296
  • 297
  • 298
  • 299
  • 300
  • 301
  • 302
  • 303
  • 304
  • 305
  • 306
  • 307
  • 308
  • 309
  • 310
  • 311
  • 312
  • 313
  • 314
  • 315
  • 316
  • 317
  • 318
  • 319
  • 320
  • 321
  • 322
  • 323
  • 324

文章来源: zhuoqing.blog.csdn.net,作者:卓晴,版权归原作者所有,如需转载,请联系作者。

原文链接:zhuoqing.blog.csdn.net/article/details/121733785

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。