python - Python正在每一行打印字母
问题描述
我正在尝试获取文件夹中的第一个 mp4 和 txt 文件,这很有效。但是当我打印它时,它只会在不同的行上打印文件名的每个字母。这是代码:
import os
import glob
import instabot
from instabot import Bot
bot = Bot()
path = 'PATH'
#This downloads all files saved
os.system("instaloader --login USERNAME --password PASSWORD :saved")
os.chdir(path)
for file in glob.glob('*.jpg'):
os.remove(file)
for file in glob.glob('*.xz'):
os.remove(file)
for file in glob.glob('*.mp4')[0]:
print(file)
for file in glob.glob('*.txt')[0]:
print(file)
所以是的,您可以根据需要测试代码,但您必须安装 os、instaloader 和 instabot。因此,如果有人可以帮助我,那就太好了!
多谢你们!:)
编辑:好的,我想更清楚一点,因为评论中有一些混乱,很多人建议我简单地删除有效的 [0] 但如果我不添加它,它将打印文件夹中的每个文件。所以我需要一种方法来处理文件夹中的第一个 mp4 和 txt 文件。再次感谢!
解决方案
import os
import glob
import instabot
from instabot import Bot
bot = Bot()
path = 'PATH'
#This downloads all files saved
os.system("instaloader --login USERNAME --password PASSWORD :saved")
os.chdir(path)
for file in glob.glob('*.jpg'):
os.remove(file)
for file in glob.glob('*.xz'):
os.remove(file)
for file in glob.glob('*.mp4'):
print(file)
for file in glob.glob('*.txt'):
print(file)
删除[0]
,您的循环正在遍历第一个文件名的每个字符 (glob.glob('*.mp4')[0]
是一个字符串,因此file
每个字符都是。
比如有文件名a.mp4、b.mp4,使用ofglob.glob('*.mp4')[0]
只会给你a.mp4
,当放入for循环时,会循环遍历每个字符so,a,.,m,p,4, ETC
推荐阅读
- html5-canvas - 体内的替代品
- python - Amazon DynamoDB 更新项目取决于版本
- go - Didexchange 使用 InboundTransport 在 localhost 中使用 aries-framework-go 运行 2 个代理
- javascript - 从嵌套在 javscript 中的对象数组中的数组中提取值
- react-native - 如何使用 React Native WebView 隐藏元素
- javascript - 未处理的承诺拒绝警告错误
- .net - 从 github 操作 Dockerize ASP.NET MVC 从 msbuild 发布的应用程序输出
- c# - 如何根据我在 C# 上给出的数字获取值?
- amazon-iam - CDK 为多个资源实现 Igrantable
- python - 在熊猫中创建与特定列中 ID 字段数相等的行