欢迎回来｡
怎么样？
很坚韧吗？
我希望你不会因为我让事情变得有点坚韧而讨厌我, 但这是件好事｡
记住, 如果你没有马上得到它, 那不是什么大事｡
这是我们学习的方式｡
让我们把它放大一点｡
你去那里｡
从我们的第一步开始, 那就是抓住这两个我们将要用到的参数｡
那么, 我们如何才能做到这一点？
我们首先要做的是路径, 这是我们图像的第一条路径｡
或者我们就这么算了｡
形象｡
文件夹｡
这个图像文件夹将使用cis, dot, arc, v, 这是参数, 记住arc, v, 这是第一个,
python文件.
这是第二个, 这是第三个｡
编程的工作方式是, 我们从零开始, 然后是一, 然后是二｡
那我们要说什么呢？
我们的V星人在吗？
然后对于第二个, 哪个是输出？
文件夹｡
它将是六点弧V｡
两个｡
所以我总是喜欢测试我们所做的事情, 因为我们想确保我们的假设是正确的｡
所以我们只打印图像｡
文件夹和输出文件夹｡
让我们运行这个文件｡
好吧, 看那个｡
我们得到pokédex和新的｡
看起来这是工作｡
太棒了｡
所以我们做了第一个任务｡
第二个呢？
第二个是检查这个新文件夹是否存在｡
如果没有, 我们需要创建它, 这样我们就可以在这里使用它来放置图像｡
这听起来像是if语句｡
所以我会说如果｡
然后检查该文件夹是否存在｡
因此, 我们可以使用OSS模块来实现这一点｡
现在还有一个路径库模块可以使用｡
这完全取决于你｡
现在有了胜算｡
我们能做的就是说o的点路径存在｡
这只是要检查, 嘿, 这个存在吗？
所以我会说输出文件夹｡
这是否存在？
让我们看看它的输出是什么｡
所以在我再次使用if语句之前, 我喜欢测试我的代码, 所以我会说｡
如果O的路径存在｡
或者说抱歉｡
而不是如果我们想要打印, 让我们运行这个｡
我们就错了｡
为什么是假的？
因为它根本不存在｡
所以为了让if语句起作用, 我们必须这样做｡
我们得说如果｡
并不是因为我们想得到相反的权利｡
如果不存在, 我们就将其转换为true, 这样我们就可以在这个块中执行一些操作, 即创建文件夹.
那么我们如何才能做到呢？
同样, 我们使用OSS模块, 使用make dirs或make directory方法,
并将目录输出文件夹给予它｡
因此, 让我们再次测试代码｡
如果我运行这个｡
你看那个｡
我们有了新文件夹｡
太棒了｡
这样, 如果我再次运行这段代码, 我们会看到我们没有创建另一个文件夹, 因为我们只是在检查这个文件夹｡
由于此文件夹现在已存在, 因此我们不打算复制并创建另一个文件夹｡
太棒了｡
所以我们一步一步地取得了进展｡
再一次, 你可能会问自己, 坚持住, 安德烈｡
我从没学过Make Ders
我该怎么做呢？
同样, 你只需要练习一下, 看看模型做了什么, 然后搜索一下,
这就是你如何弄清楚的｡
作为一个程序员, 没有人能记住任何东西｡
别恨我｡
我只是在帮你锻炼肌肉｡
好了, 最后一部分｡
最后一部分是循环通过pokédex, 抓住每一个图像, 并转换它, 并保存到新的文件夹｡
那么我们如何才能做到呢？
我们执行一个for循环, 输入file name in, 然后再次使用操作系统点列表目录.
这是目录中的项目｡
因此, 使用list dir, 我们可以做的就是给予它一个图像文件夹｡
在这里, 我们现在有了这些文件路径｡
在这里我可以说图像等于图像点开｡
我们在这里该做什么？
因为记住, 我们每次都要打开它, 对吧？
而这个文件JPEG到PNG是在这些文件夹之外｡
所以我们好歹要打开｡
这些在pokédex的图片｡
但请记住, 我们希望使用任何输入, 因为文件夹pokédex可能并不总是相同的｡
因此, 我们不需要抓取Pokédex文件夹, 只需使用SW字符串即可｡
在这个字符串中, 我们需要.
形象｡
文件夹｡
它会给予我们pokédex斜杠和这里的斜杠, 因为我们假设用户要输入斜杠, 我们不必把它包含在这里,
然后给另一个字符串, 它将是文件｡
姓名｡
我们从这里开始｡
现在我们打开这些图像, 每一张, 然后我们就可以转换它们了, 对吧？
所以让我们通过说图像, 点保存来转换它们｡
同样, 我们将使用F字符串, 做同样的事情, 但这次是针对输出文件夹｡
所以我要说｡
输出文件夹｡
给予它给我｡
档名｡
然后逗号, 再转换成Pag｡
只是为了好玩, 让我们说打印全部完成, 让我们知道每次处理图像时, 我们都打印全部完成｡
现在我们要试着运行这段代码｡
这段代码中确实有一个bug, 我们需要修复, 让我们看看会发生什么.
所以我要运行这个｡
好了
我们都做了, 都做了, 都做了, 都做了｡
四张照片, 看起来效果不错｡
我们来看看｡
如果我在这里转到新文件夹｡
嗯嗯嗯
看起来这些还是JPEG格式的｡
这就奇怪了｡
为什么会这样呢？
我想我们应该把这些东西换掉｡
好吧, 我知道了
好吧, 如果在这里保存会做一个点, p和g呢？
我们再把它缩小一点｡
我们会说以文件格式保存P&G, 如果我运行这个程序, P&G｡
好吧, 我会的
你看那个｡
我们现在有了图像, 但是｡
哦, 我们有｡
点jpeg, 点pag｡
这是怎么回事？
我们得洗白我们的名声｡
好吧, 我知道了
所以我们要做的｡
就是当我们把图像打开的时候｡
我们需要从该图像中删除点jpeg, 这样我们就可以将其保存为p和g｡
那么我们如何才能做到呢？
你可能已经在谷歌上搜索过了, 因为实际上有一个很有用的工具, 我们可以和操作系统模块一起使用,
让我们可以做到这一点｡
所以我们能做的就是说干净｡
名称, 我们会说O的点路径｡
点分割文字｡
它要做的就是把文本分开｡
让我给你看看｡
我要说的是文件名｡
在这里, 我什么都不会保存｡
我要注释掉它｡
而且我只想打印干净的名字｡
让我们看看拆分文本的作用｡
我要清理干净然后逃跑｡
再来一次｡
我这里还有一杯茶｡
它应该是拆分文本｡
所以我们再说一遍｡
看看这个｡
它给了我一个元组, 这个元组把名字和扩展名之间的文本分开｡
这非常有用｡
所以我们只需要保留第一部分, 我们不关心这个部分, 所以我们可以通过输入0来访问干净的名称｡
所以元组中的第一项｡
现在如果我回到这里, 我们用干净的名字来保存图像, 而不是finally｡
这应该可以｡
所以, 让我删除一些评论｡
我想做的另一件事是删除所有这些图像, 因为我们不再需要它们了｡
理想情况下, 我们只有P&G图像, 因此我将实际删除此新文件夹｡
所以我们说删除｡
好吧, 我会的
您可以将其删除｡
你去那里｡
我要去保存｡
让我们来看看这是否有效｡
让我们运行我们的命令｡
都搞定了
如果我们回去｡
嘿, 看那个｡
我们所有的图片现在都是PNG格式｡
你也看到了那有多快｡
我们刚刚创建了我们的第一个JPEG到PNG转换器｡
现在, 只要您为该文件给予一个带有的文件夹, 就可以转换该文件｡
你可以给予它成百上千的JPEG格式的图像, 它会把它们转换成PNG格式｡
如果需要, 您甚至可以调整它们的大小｡
您甚至可以向它们添加图像滤镜｡
我们只需要几行Python代码和一些有用的库就能做到｡
非常, 非常酷｡
现在, 我们只是触及到了表面, 但您已经开始看到Python的强大功能｡
我们有麻烦了｡
而这个问题可以用Python及其库来解决｡
通过谷歌搜索, 一点尝试和错误, 调试我们的代码,
我们就做了一些可以保存我们很多时间的东西｡
而不是手动执行此操作｡
如果你能走到这一步, 那就做得很好｡
这是我们的第一个图像处理项目｡
我希望你很兴奋｡
还有很多事要做｡
但是给予自己一个鼓励, 我会在下一个视频中看到你｡
再见, 再见, 再见