原始python字符串中的回车

K.M*_*ier 1 python regex carriage-return

对于一些语法高亮实验,我在Python 3.6 中创建了以下原始字符串(请注意,字符串本身包含一段 C 代码,但现在这并不重要):

    myCodeSample = r"""#include <stdio.h>

    int main()
    {
        char arr[5] = {'h', 'e', 'l', 'l', 'o'};

        int i;
        for(i = 0; i < 5; i++) {
            printf(arr[i]);
        }
        return 0;
    }"""
Run Code Online (Sandbox Code Playgroud)

我注意到每一行都以 Unix 风格的\n换行符结尾。但我实际上希望 - 为了我的实验 - 让每一行都以 Windows 风格的\r\n换行符结尾。有没有办法优雅地做到这一点?

Jea*_*bre 5

只需按照您的方式定义您的字符串,但适用replace于文字:

myCodeSample = r"""#include <stdio.h>

int main()
{
    char arr[5] = {'h', 'e', 'l', 'l', 'o'};

    int i;
    for(i = 0; i < 5; i++) {
        printf(arr[i]);
    }
    return 0;
}""".replace("\n","\r\n")
Run Code Online (Sandbox Code Playgroud)