python - 如何保护我的代码免受“索引超出范围”错误的影响
问题描述
我一直在尝试构建一个简单的日历作为我空闲时间的编码练习。但是,我似乎无法解决这个问题:
如何返回列表中的第 0 项?我的想法是,只要 dayoftheweek 长于列表的长度,它就会返回到 days[0],但我似乎无法让它工作。
days = ["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]
dayoftheweek = days[0]
userchoice = int(input("Please add a number to days: "))
dayoftheweek = days[userchoice]
如果用户输入8
,我得到一个Index out of range
错误。
如何捕获超出 mydays
和 default范围的输入0
?
解决方案
您可以使用模数:
dayoftheweek = days[userchoice % len(days)]
推荐阅读
- javascript - Firebase Cloud Function - 将文档添加到 Firestore 时向 iOS 设备推送通知
- android - 单击按钮后如何重复相同的文本?
- ruby-on-rails - Group ActiveRecord::Relation By Field Into Hash With Dictionary
- visual-studio - Visual Studio 2017 npm node_module libnpmhook 承诺太长
- ajax - What's the most secure way to store a jwt and still be able to access it from javascript?
- c++ - 移植DXUT SDKMesh导入OBJ文件,在哪里添加纹理坐标和索引?
- html - Chrome 不自动播放静音视频
- javascript - 使用正确的 *this* 值运行回调
- html - Wordpress Iframe 自动播放视频不起作用
- linux - 在 ssh 远程服务器的 heredoc 中使用别名