【发布时间】:2017-03-20 06:03:14
【问题描述】:
我有一个包含以下内容的 user.txt:
user1:M0024132132
user2:M00123132
user3:M001234123
user4:123123
我写了一个python代码来执行一个基本的字符串连接操作
filename='user.txt'
separator=":"
fileIN = open(filename, "r")
line = fileIN.readline()
while line:
sout=line.split(separator)
user=sout[0]
passwd=sout[1]
print ('create:' + str(user) + ':' + str(passwd) + ':::' + str(user) + ':/home/' + str(user) + ':/bin/bash:::::' )
line = fileIN.readline()
预期输出:
create:user:M00123132:::user:/home/user:/bin/bash::::: 创建:user1:M00123132:::user1:/home/user1:/bin/bash::::: 创建:useruser1:M00212312:::useruser1:/home/useruser1:/bin/bash::::: 创建:sdfsdf:12312:::sdfsdf:/home/sdfsdf:/bin/bash:::::
但我得到的输出是:
创建:用户:M00123132
:::user:/home/user:/bin/bash:::::
创建:user1:M00123132
:::user1:/home/user1:/bin/bash:::::
创建:useruser1:M00212312
:::useruser1:/home/useruser1:/bin/bash:::::
请帮我解决这个问题。
【问题讨论】:
-
Readline 总是在行尾保留 '\n',除了最后一行,只需用 rstrip() 或其他方法将其删除。
标签: python string python-3.x concatenation