python - 为什么 Python 列表可以使用括号或括号,但如果一个元素只能使用括号?
问题描述
我在很多个月前忘记了我的一门介绍课后进入了 Python ......我称之为代码
filedialog.askopenfilename(filetypes = (("TCX files","*.tcx"),("All files","*.*"))) # Works
它有效。我决定只需要 *.tcx 文件,所以我使用
filedialog.askopenfilename(filetypes = (("TCX files","*.tcx"))) # Doesn't work
和
filedialog.askopenfilename(filetypes = ("TCX files","*.tcx")) # Doesn't work
没有骰子 - 我明白了
“错误的文件类型“*.tcx”,应该是“typeName {extension ?extensions ...?}”
但后来我尝试
filedialog.askopenfilename(filetypes = [("TCX files","*.tcx")]) # Works
它有效。我对 Python 想要方括号中的列表没有意见,但是第一行是否有效?Python 对单元素列表的处理是否与 N>1 根本不同?或者它可能只是 tkinter 的代码——模块(文件对话框)可以处理多态输入?
解决方案
看起来filetypes
参数应该是一个元组序列。因此,当您("TCX files","*.tcx")
用作此参数的值时,它被视为一个序列 - 哪些元素不是元组。
推荐阅读
- sql-server - 在自动化过程中使用 SSIS 将 Jira 数据提取到 SQL Server
- python - 如何读取内存中的表单上传`python-multipart`
- javascript - 如何更改保存在数组中的 React 元素的道具?JSX
- go - 如何在 GCP 客户端 api (Golang) 中编写单元测试?
- r - 在 Ubuntu 16.04 上将 R 版本从 3.4.4 升级到 3.5.3
- python - 如何基于生成具有给定范围内元素的给定大小的列表来创建列表理解?
- arduino - 在 Proteus 8.0 中导入库
- python - 作为持久子进程运行和调用 Python 程序
- python - RobotFramework 抱怨连续的空白问题
- r - 如何缩小R中的数据框