我正在打印一些变量,如下所示:
print("First name:", first_name)
print("Last name:", last_name)
print("Password:", password)
显示的前两个很好,但最后一个像这样:
Password:
<the password>
哪个是不受欢迎的,并且与其他不一致,这就是为什么我希望它看起来像这样:
Password:<the password>
使用end=""
没有帮助。
尝试在打印函数内部将密码转换为字符串
print("password:",str(password))
您的password
变量包含换行符(或它的字符串表示形式)。
这两种格式设置方法中的任何一种都将在不换行的情况下内联打印字符串变量:
>>> password = "blarf"
>>> print("password:", password)
password: blarf
>>> print(f"password: {password}")
password: blarf
但是,如果变量包含换行符,您将在输出中得到换行符:
>>> password = "\nblarf"
>>> print("password:", password)
password:
blarf
尝试:
print("password:",password.strip())
您的密码变量内容前面可能有换行符。 strip
摆脱了这一点。请注意,它还会删除密码中的字符串字符之前和之后的所有空格,包括空格之前和之后。如果您只想删除前后的换行符,请使用:
print("password:",password.strip("\n"))
尝试并删除password
字符串中存在的所有换行符。
您可以使用以下方法:
first_name = "david"
last_name = "s"
password = "\n1234"
print("firstname:",first_name)
print("lastname:",last_name)
print("password:",password)
# firstname: david
# lastname: s
# password:
# 1234
# removing the new line
password = password.replace("\n","")
print("firstname:",first_name)
print("lastname:",last_name)
print("password:",password)
# firstname: david
# lastname: s
# password: 1234
import re
re.sub("\n", "", password)
print("firstname:",first_name)
print("lastname:",last_name)
print("password:",password)
# firstname: david
# lastname: s
# password: 1234
第一个选择是使用字符串对象的replace
方法,您可以在以下链接中阅读:https://www.tutorialspoint.com/python/string_replace.htm
第二种选择是使用sub
模块的re
,您可以在以下链接中阅读:https://note.nkmk.me/en/python-str-replace-translate-re-sub/
由于我使用了Samwise,设法解决了问题:
password.splitlines()
password = password[1]
print("password:",password)
David S方法也很好用
password = password.replace("\n","")
print("password:",password)