字符串添加换行符,跨平台

2024-01-22

我正在我的应用程序中生成一些文本。由于文本是更大消息的一部分,有时我需要添加换行符,有时则不需要:

NEWLINE = '\n'  # TODO: how to define this cross-platform? Can I use os.linesep?

def get_txt(add_newline=False):
    txt = 'Hello'
    if add_newline:
        txt += NEWLINE
    return txt

这可以如下使用:

def get_message():
    msg = get_txt(True)
    msg += get_txt(True)
    msg += get_txt(False)
    return msg

这将返回:

Hello
Hello
Hello (no newline here)

我该如何定义NEWLINE以跨平台的方式?或者更好的是,标准库中(或包含在 python 中)是否有一个函数可以将换行符附加到字符串? (打印时不一定,只需在内存中的字符串后追加一个换行符即可)。使用的换行符应该是适合 python 运行平台的换行符


你可以尝试用这个:

import os
print(os.linesep)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

字符串添加换行符,跨平台 的相关文章

随机推荐

  • JavaScript 中的 onclick 事件函数

    我在带有按钮的 HTML 页面中有一些 JavaScript 代码 我有一个函数叫做click 处理onClick按钮的事件 按钮的代码如下
  • Shell 函数字符串变量在 While 循环和 case 后结果为空?

    为什么我没有得到echo User password is typo 结果 我如何在 while 循环之后得到最后的拼写错误结果 bin sh pass mes read sp Password passvar echo passvar p
  • 以特定方式对 Select 子句结果进行排序

    我需要帮助编写select子句查询 例如 假设我有一个这样的查询 select value from some table order by value asc 结果我得到这个 1 2 3 4 5 6 7 8 9 10 但我想写的一个特殊查
  • Django 安装错误(没有名为 Django 的模块)

    我使用的是 Mac OS X Mavericks 我安装 Django 时出错 我使用 pip install 命令安装了 Django 它位于下面的目录中 Requirement already satisfied use upgrade
  • 最佳布局算法[重复]

    这个问题在这里已经有答案了 我正在根据本文在 ASP NET 应用程序中实现 CSS Sprites 设置 http weblogs asp net zowens archive 2008 03 05 css sprite for asp
  • 禁用Oracle中的所有表约束

    如何使用单个命令禁用 Oracle 中的所有表约束 这可以针对单个表 表列表或所有表 最好避免写出临时假脱机文件 使用 PL SQL 块 您可以从 SQL Plus 运行它或将其放入包或过程中 与 USER TABLES 的连接是为了避免视
  • nuget 更新后样式变得混乱。

    我更新了默认 MVC 应用程序的多个 nuget 包 但我的页面样式弄乱了 看起来正在加载部分样式 但我无法找出问题所在 提前致谢 更新前我的导航栏 更新后我的导航栏 很遗憾听到这个消息 我也遇到了同样的问题 也花了我很多钱 太令人沮丧了
  • 帮我推理 F# 线程

    在闲逛一些 F 通过 MonoDevelop 时 我编写了一个例程 它用一个线程列出目录中的文件 let rec loop path string Array append path gt Directory GetFiles path g
  • getCacheFiles() 和 getLocalCacheFiles() 是否相同?

    As 获取本地缓存文件 http hadoop apache org docs r2 3 0 api org apache hadoop mapreduce JobContext html getLocalCacheFiles 已被弃用 我
  • 引导开关事件处理程序不工作

    我问了一个与此类似的问题here https stackoverflow com questions 22460608 bootstrap switch js being called but doing nothing但现在我坚持使用 B
  • 使用子进程来避免长时间运行的任务断开discord.py bot?

    我为我的 Discord 服务器创建了一个机器人 它会转到给定 subreddit 的 Reddit API 并根据您输入的 subreddit 在 Discord 聊天中发布当天的前 10 个结果 它忽略自己的帖子 实际上只发布图片和 G
  • Pandas 或 Numpy:如何获取匹配的数据条目来进行数据操作

    举例来说 我有两个这样的数据关系 Data1 C1 C2 Peter kiwi John banana Susan peach Joe apple Data2 C3 C4 apple 4 banana 7 apple 4 对于 data1
  • winmd 文件的版本 255.255.255.255 表示什么?

    我注意到大多数 全部 winmd文件的版本为255 255 255 255 like Windows 版本 255 255 255 255 文化 中性 PublicKeyToken null Metro 应用程序引用具有此版本号的此类程序集
  • Android Studio:Facebook 显示。(内容)无法正常工作

    我在 Android Studio 上使用 Facebook SDK 4 0 在我的应用程序中 我有一个按钮 应该使用设置的内容将图像共享到 Facebook Bitmap h BitmapFactory decodeResource ge
  • 同一行不同列的多个行值

    我有一个有 4 个字段的表Person id Store id startdate and enddate 对于特定值person id 可以有许多具有不同开始和结束日期的记录 这里我需要将多行值更新为同一行和不同列 示例1 Person
  • 从另一个窗体 Winforms 传递值[重复]

    这个问题在这里已经有答案了 网上所有传表单的教程都是从form1然后打开form2然后传值 我想要一些相反的东西 表单 1 和表单 2 已打开 因此如果您在表单 2 中单击 确定 则您在表单 2 中获得的值将传递到表单 1 中 前任 for
  • Rails4 ActionController::InvalidAuthenticityToken 错误

    我有 Rails4 应用程序在生产中运行 我的访问者偶尔会遇到 ActionController InvalidAuthenticityToken 错误 我无法重现该错误 我每天都会收到 2 4 条来自各种形式的通知 但背后没有明确的逻辑
  • MVVM 方式关闭文档并可取消

    我正在将 Avalondock 2 x 用于我的一个开源项目 如果文档在关闭时变脏 您应该能够取消关闭 我正在使用 Caliburn Micro 和 Coroutine 我能够解决这个问题的唯一方法是使用 C M 附加到事件
  • 使用 knit 有条件地在 RMarkdown 中包含子文档列表

    给定子文档列表 如何根据某些条件选择将哪些子文档插入到主文档中 在我的用例中 我将一个数据集中的未知条目与第二个数据集中的所需条目进行匹配 第二个数据集具有与每个条目关联的子文档 如果找到匹配项 我想包含其关联的子文档 以其最基本的形式 这
  • 字符串添加换行符,跨平台

    我正在我的应用程序中生成一些文本 由于文本是更大消息的一部分 有时我需要添加换行符 有时则不需要 NEWLINE n TODO how to define this cross platform Can I use os linesep d