1. 程式人生 > >python之Bug之字串拼接bug

python之Bug之字串拼接bug

\r\n拼接Bug

環境: python3.4.pycharm2017 偶然的學習中遇到了一個問題,百思不得姐,什麼問題呢,大家輸入太快了,難免有失誤就如下面的程式碼
    #構造響應資料
    response_start_line = "HTTP/1.1 200 OK0\r\n"
    response_headers = "Server: My server \r\n"
    # response_headers = "Server: My server\r \n"
    response_body = "hello darren"
    response = response_start_line  + response_headers + "\r\n" + response_body
    # response = response_start_line  + "\r \n " + response_headers + "\r\n" + response_body
    print("response data:%s" % response)

仔細一瞧沒啥毛病,大家再看下圖 在執行時如果是1和3的組合,列印的時候沒毛病,會原樣打出來,但是如果選擇2和3組合,打出來的時候在response_headers這裡只有一個空行沒有資料。 所以我仔細看了看,\r\n之間多了個空格,為什麼呢,但是如果\r\n在4中則不會影響列印結果,所以想了一想可能是規定,去查了下資料Windos的換行是\r\n,unix的是\n,mac的是\r,至於\r\n之間,我想是不能有空格的,至少在python裡如此。