簡體   English   中英

無法連接Python2.7中的字符串

[英]Unable to concatenate strings in Python2.7

我正在嘗試在函數中連接兩個字符串。 我嘗試了所有串聯,但那兩個字符串只是不一個接一個地串聯,而是用較短的字符串B(length = s)代替較長的字符串A的前s個單位。

我從輸入文件中讀取了一些數據,並將內容為“ 00001M035NNYY1111111”的第三行存儲到一個名為“申請人”的變量中:

data = open("input.txt").read().split('\n')

applicant = str(data[2])

我想在applicant的末尾添加一個整數8,因此新applicant將為“ 00001M035NNYY11111118”。 我嘗試了applicant += str(8)"".join((applicant, str(8)))和其他串聯方法,但是它們都只給我“ 80001M035NNYY1111111” ...有人知道為什么會這樣以及如何我是否應該做以獲得預期的結果。

您的文件中可能有Windows行尾: \\r\\n 通過在\\n上分割,您將留下\\r ,它返回到行的開頭。 您可以手動修剪它:

with open("input.txt") as f:
    data = [line.rstrip() for line in f]

這應該工作

[GCC 7.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> data = open("input.txt").read().split("\n")
>>> applicant = data[2] + str(8)
>>> print applicant
00001M035NNYY11111118
>>>

如果這不起作用,則您的文本文件可能存在問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM