Racket 中列表到字符串的转换

2024-01-03

如何在 DrRacket 中将列表转换为字符串?例如,如何将'(红黄蓝绿)转换为“红黄蓝绿”?我尝试使用 list->string 但这似乎只适用于字符。


这里的技巧是映射列表symbols作为输入接收,依次将每个数字转换为字符串,并在除最后一个数字之外的每个数字之间添加空格。像这样的东西:

(define (slist->string slst)
  (cond ((empty? slst) "")
        ((empty? (rest slst)) (symbol->string (first slst)))
        (else (string-append (symbol->string (first slst))
                             " "
                             (slist->string (rest slst))))))

或者更简单,使用高阶过程:

(define (slist->string slst)
  (string-join (map symbol->string slst) " "))

无论哪种方式,它都会按预期工作:

(slist->string '(red yellow blue green))
=> "red yellow blue green"

为了彻底,如果输入列表是一个列表strings(不是问题中的符号),答案是:

(define strlist (list "red" "yellow" "blue" "green"))
(string-join strlist " ")
=> "red yellow blue green"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Racket 中列表到字符串的转换 的相关文章

  • str_ireplace 与 str_replace 一样工作

    我需要用 url 字符串中的小 ascii 字符替换所有本地字符 包括大写字母 str echo str ireplace array array c c d s z str 结果 c c d s z 我期望 c c d s z c c d
  • 如何使用 Sequel Pro 在导入过程中将字符串更改为日期?

    我正在尝试使用 Sequel Pro 将文件导入到 MySQL 表中 我知道我需要使用 STR TO DATE 但我无法找出正确的语法 我在每一行都收到一堆这样的错误 ERROR in row 1 You have an error in
  • 如何计算一组字符串的最短唯一前缀?

    这是一个非常常见的算法命令行解析 给定一组预定义的长选项名称 计算唯一标识这些选项之一的最短前缀 例如 对于以下选项 help hostname portnumber name polymorphic 这将是输出 he ho por n p
  • 字符串被两个不同的分隔符分割

    我有这样的字符串 some dasd dasd dasdas dasdas dasd das dsad 我需要用两个不同的符号将字符串拆分为数组 and 所以我想得到数组 some dasd dasd dasdas dasdas dasd
  • C++/STL 字符串:如何使用通配符模仿正则表达式之类的函数?

    我想使用通配符比较 4 个字符串 例如 std string wildcards H RH H 0 5 in the last one I need to check if string is H0 and H5 只用STL能实现吗 谢谢
  • Knuth-Morris-Pratt 算法

    解决方案是Knuth Morris Pratt 算法 https en wikipedia org wiki Knuth E2 80 93Morris E2 80 93Pratt algorithm 干草堆 AAAAAAAAA 针 AAA
  • 如何在Powershell控制台中分配多行字符串

    当我在 powershell 控制台中输入此内容时 test Test Test 并且输入多次 它会一直打印 gt gt 所以我永远无法完成命令 该怎么办 应该是行中的第一件事 或者它被认为只是字符串的一部分 test Test Test
  • Grep 模式匹配用双引号括起来的小写字符串

    我在 grep 方面遇到了一些问题 我似乎无法弄清楚 我试图在一组源文件中搜索用双引号 C 字符串 括起来的小写单词的所有实例 使用 bash 和 gnu grep grep e a z cpp 没有给我任何匹配项 而 grep e a z
  • 嵌套 NumPy 数组并使用拆分等方法

    我是 NumPy 的新手 正在尝试在我的代码中使用它来处理某些表 我有一个如下所示的坐标列表 coordinates 2 0 0 1 3 4 并想这样写 coordinatesNumpy np array 2 0 0 1 3 4 在常规 P
  • C# 使文本框中的一组字符表现得像一个字符

    基本上 我有这样的关键字sin and cos 在文本框中 我希望它的行为像单个字符 当我在下面提到整个字符串时 它指的是字符组 例如 sin Using sin 举个例子 如果插入符号位于此位置 在s 如果你按下del 它将删除整个字符串
  • 需要Python字长函数示例

    我的家庭作业有点困难 我本来应该编写一个函数 limitWords 将输入限制为 20 个单词 如果输入超过 20 个单词 则将输入截断为仅 20 个单词 我使用 len text split 作为计算单词的方法 因此 20 个或更少的部分
  • List 或其他类型上的 string.Join

    我想将整数数组或列表转换为逗号分隔的字符串 如下所示 string myFunction List
  • C# 模式匹配

    我对 C 有点陌生 我正在寻找一个字符串匹配模式来执行以下操作 我有一个像这样的字符串 该书将在 唐宁街 11 号接待处 并将由主要医疗保健人员参加 我需要创建一个 span 标签来使用 startIndex 和 length 突出显示一些
  • 使用默认值压缩而不是删除值?

    我正在 haskell 中寻找一个函数来压缩两个长度可能不同的列表 我能找到的所有 zip 函数都只是删除列表中比其他列表长的所有值 例如 在我的练习中 我有两个示例列表 如果第一个比第二个短 我必须用 0 填充 否则我必须使用 1 我不允
  • 将字符串中的 i 个连续相同字符分组到列表中[重复]

    这个问题在这里已经有答案了 我希望以这样的方式分隔输入字符串 即所有连续的相同字符都分组在一个列表中 示例1 str aabbcccdeddgg output aa bb ccc d e dd 期望的输出 aa bb ccc d e dd
  • Python 将字符串组合成尽可能短的字符串?

    如果我有一个字符串列表 我想将它们组合成一个具有重叠字符的字符串 如果没有剩余的重叠字符串 请将其添加到末尾 这是一个过于简化的版本 input one two output twone 我正在寻找一种方法来对输入列表中的任意数量的字符串执
  • 为什么 Java 和 .NET 中的字符串不能是可变的?

    为什么他们决定制作String在 Java 和 NET 以及其他一些语言 中是不可变的 他们为什么不让它可变呢 根据有效的Java http www oracle com technetwork java effectivejava 136
  • 如何获取列表的最后一个索引?

    假设我有以下列表 list1 1 2 33 51 indices 0 1 2 3 如何获取该列表的最后一个索引 在本例中为 3 len list1 1绝对是可行的方法 但如果您绝对需要list具有返回最后一个索引的函数 您可以创建一个继承自
  • 如何从字符串中分离字符和数字部分

    例如 我想分开 OS234 to OS and 234 AA4230 to AA and 4230 我使用了以下简单的解决方案 但我确信应该有一个更有效和更强大的解决方案 private void demo string cell ABCD
  • SQL 查询结果为字符串(或变量)

    是否可以将SQL查询结果输出到一个字符串或变量中 我的php和mysql不好 假设我有数据库 agents 其中包含列 agent id agent fname agent lname agent dept 使用此查询 sql SELECT

随机推荐

  • 使用“init”或“didmove”的正确方法是什么?

    语言 Swift 3 0 IDE Xcode 8 0 beta 2 项目 iOS 游戏 SpriteKit 我为 iOS 创建了一款游戏 我知道 Apple 对于接受应用程序 游戏的规则非常严格 所以我想知道哪种是设置游戏的正确方法 我从谷
  • 在共享开发环境中覆盖 PHP.ini

    我的开发环境与我的初创公司的其他开发人员共享 并在 Rackspace 上设置 php ini 文件位于 etc 文件夹 我相信这是一个集中位置 每个其他开发人员的开发环境设置都从这里进行配置 我想定制这个php ini专门为我自己归档 而
  • 在 Asp.net Core 1.0 项目的编译时复制文件

    我正在使用 Asp Net Core 1 0 创建 REST Api 我想在编译项目时将项目中未包含的文件复制到输出路径 但我不知道该怎么做 我尝试使用 buildOptions copyToOutput 但没有成功 我无法真正理解此处找到
  • Node.js 的 EJS(与 Express 捆绑)中未包含 link_to 和其他视图助手?

    我已经使用 Express Web 框架和 EJS 模板引擎设置了一个 NodeJS 服务器 当我尝试使用 EJS 时link to在视图内查看助手时 我收到引用错误 这是因为我做错了什么 还是视图助手只是不包括在内 我尝试过以下方法 lt
  • 在 Blazor 中,如何动态更改 HTML 标签?

    假设我的 Blazor 组件中有以下标记 div ChildContent div 我想为父组件提供一种方法来确定将使用哪个标签来代替 div 就像是 lt Tag attributes Attributes data myattr som
  • QMessageBox 阻止 QDialog

    这次我真的不知道如何提出我的问题 我的应用程序以 QDialog 作为主窗口 该应用程序从远程机器获取不同的值 例如温度 湿度等 为了进行开发 我添加了一个包含不同小部件的组框来模拟这些值 我对向用户发出警告和警报有不同的限制 例如 如果温
  • 优雅地关闭 Java 命令行程序的最佳方法

    我对优雅地关闭 Java 命令行程序的不同方法感兴趣 发送终止信号不是一种选择 我可以想到几种不同的方法 打开端口并等待连接 完成后 优雅地关闭 观察要创建的文件 然后关闭 从终端读取一些输入 例如 执行关闭 第三种方法并不理想 因为经常有
  • Chef 食谱中的编译时间与运行时间

    我有以下 简化的 方法 称为 java 当然可以安装 Java 文件菜谱 default rb include recipe install java 文件菜谱 install java rb Install RPM from yum re
  • 在 Qt Creator 中哪里可以将参数传递给编译器?

    在 Qt Creator 中哪里可以将参数传递给编译器 这并不是那么明显 根据您的构建系统 它要么在您的qmake 项目文件 https doc qt io qt 5 qmake variable reference html qmake
  • “内存不足”是可恢复的错误吗?

    我已经编程很长时间了 我看到的程序 当内存不足时 会尝试清理并退出 即优雅地失败 我不记得上次看到有人真正尝试恢复并继续正常运行是什么时候了 如此多的处理依赖于能够成功分配内存 尤其是在垃圾收集语言中 似乎内存不足错误应该被归类为不可恢复的
  • 在 VS.Net 的调试器中正确检查 COM / Interop 类的实例?

    有谁知道是否以及如何在 VisualStudio 的调试器中正确查看 COM Interop 对象 以其正确的类型 我得到的只是 evil 系统 ComObject值 即使它正确标识了类型 E g From NET 和 COM 完整的互操作
  • str_getcsv 示例

    我想将逗号分隔的值字符串解析为数组 我想尝试一下str getcsv php 函数 但我找不到任何关于如何使用它的好例子 例如 我有一个输入 用户可以在其中提交编程语言 php js jquery 等 的标签 就像提交问题时在 stacko
  • 找出最小匹配对

    我有 2 个列表 其中包含具有 3 个属性的相同对象 accNo accType 和余额 List lt gt CSList CS1 CS 3000 CS2 CS 2000 CS3 CS 1000 List lt gt CLList CL1
  • 我可以对 HTML 表单使用 HTML5 下载属性吗?

    HTML5 引入了一个很好的标记功能 a 链接作为下载端点 只需添加download归因于 a tag 见说明 http www w3schools com tags att a download asp 是否可以对 HTML 表单执行相同
  • 使用 RewriteCond %{QUERY_STRING} 而不将查询字符串附加到新地址

    我尝试使用 htaccess 进行 301 重定向 问题 view products id 12345 gt 8831 旧地址和新地址之间没有任何关系 因为某些原因 Redirect 301 view products id 12345 8
  • 用于更新的 MySql UNION

    有没有办法使用单个 SQL 查询更新多行 每行具有不同的值 我必须用不同的数据更新多行中的一列 对每一行使用单独的更新查询似乎过多 因此如果可能的话 我希望将此过程合并到单个 SQL 语句中 或者至少减少所需的查询数量 我将 PHP 与 Z
  • VMware vFabric 服务器超时

    因此 我下载了 Spring Tool Suite 当我想启动 VMware vFabric tc Server 时 我收到以下消息 服务器 VMware vFabric tc Server Developer Edition v2 6 无
  • 支持的平台、基础 SDK、仅构建活动架构设置在 Pod 更新后恢复

    我的团队最近开始使用 CocoaPods 来管理我们的 iOS 应用程序项目中的依赖关系 这是 pod 文件 platform ios 6 0 pod UI7Kit pod AFNetworking gt 2 0 pod TMCache p
  • 有没有办法检查应用程序签名是否已调试或已发布?

    我目前正在开发 RPC 服务供开发人员使用 但想确保我可以区分另一个应用程序的调试密钥及其公钥 有没有办法检查另一个应用程序的密钥并判断它是否是调试密钥而不是已发布的应用程序密钥 这样做的目的是能够判断他们的应用程序何时处于开发或发布状态
  • Racket 中列表到字符串的转换

    如何在 DrRacket 中将列表转换为字符串 例如 如何将 红黄蓝绿 转换为 红黄蓝绿 我尝试使用 list gt string 但这似乎只适用于字符 这里的技巧是映射列表symbols作为输入接收 依次将每个数字转换为字符串 并在除最后