[英]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.