python - 使用特定字符作为轴拆分字符串/列表
问题描述
抱歉,如果这是重复的,我进行了彻底的搜索,但找不到这个特定问题的答案。
我正在构建一个程序,它将以“XdY”格式(即 4d6、1d20、3d10 等)输入并生成所需的掷骰子。我需要将输入字符串转换为两个单独的值,用于掷骰子的数量和所述骰子的边数。例如,给定
roll = "3d6"
我想结束
number = int("3")
sides = int("6")
我正在设想一种解决方案,它将原始字符串拆分为一个字符串,其中包含“d”左侧的所有内容,一个包含其右侧的所有内容,同时丢弃“d”字符本身。截至目前,我已将程序设置为处理“数字”和“边”值,但前提是它们作为两个单独的整数输入。
解决方案
简单的解决方案:
number, sides = map(int, roll.split('d'))
只需将您的roll
字符串拆分'd'
,将获得的字符串转换为数字并将它们分别分配给number
和sides
。
推荐阅读
- bash - 如何对 /etc/network/interface 进行排序?
- html - Autofill/Autocomplete not working, if the form has more than 200 input fields
- asp.net-core - Is authenticating a service-type user as an end user bad?
- javascript - Node Express joi validation failed when I added .when()
- java - 是否可以在后端使用多个框架(Spring boot + Django)?
- javascript - 多个 XMLHttpRequests - 从多个响应中检索数据
- reactjs - 仅将 React 与函数一起使用有什么好处吗?
- mongoose - Mongoose countDocuments() 返回查询
- blazor - Blazor WASM 在未通过身份验证时重定向到登录 - 不显示布局
- html - SVG 组子项未按预期转换