python - 如何在 Python 中不带尾随空格进行打印

标签 python string

我写了一个程序,用户可以在其中输入任何字符串。它应该:

  1. 删除所有的元音。
  2. 插入字符“.”在每个辅音之前。
  3. 将所有大写辅音替换为相应的小写辅音。

这是我写的代码:

s=raw_input()
k=s.lower()
listaa=[]
for x in k:
    listaa.append(x)
    if x=='a':
    listaa.remove('a')
    if  x=='o':
        listaa.remove('o')
    if x=='y':
        listaa.remove('y')
    if x=='e':
        listaa.remove('e')
    if x=='u':
        listaa.remove('u')
    if x=='i':
        listaa.remove('i')
for a in listaa:
print '.%s'%(a),

此代码运行良好,但例如,如果我使用输入 tour,则输出为 .t .r。虽然这是对的,但这并不是我想要的。我想删除它们之间的空格。我想要这样的输出:.t.r

我该怎么做?

最佳答案

如果在 print 后面放一个逗号,它会在 print 语句中添加一个空格。要不打印空格或换行符,请使用 sys.stdout.write()

固定代码:

import sys

s=raw_input()
k=s.lower()
listaa=[]
for x in k:
    listaa.append(x)
    if x=='a':
        listaa.remove('a')
    if  x=='o':
        listaa.remove('o')
    if x=='y':
        listaa.remove('y')
    if x=='e':
        listaa.remove('e')
    if x=='u':
        listaa.remove('u')
    if x=='i':
        listaa.remove('i')
for a in listaa:
    sys.stdout.write('.%s' % a)

注意:您需要添加 import sys 语句才能使用 sys.stdout.write

关于python - 如何在 Python 中不带尾随空格进行打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33617778/

相关文章:

python - 从 json 创建数据框时如何不推断架构?

python - 将元组的可迭代对象转换为每个元素的可迭代对象 (Python)

由单独源文件中的全局变量引起的 C++ 段错误

java - 确定字符串是否是Java中的整数

c - 嵌入式 C 将字符串传递给函数

tsql - String.Format 类似于 T-SQL 中的功能吗?

python - Flask 表单字段的动态默认值设置

python - 具有稀疏数据的列表比与 numpy 数组相同的数据消耗更少的内存

python列表转换

Java 字符串输入错误