在同一行中用逗号打印多个值

时间:2018-11-21 23:17:50

标签: python string

我是python的新手(以及stackoverflow),我想知道如何在逗号之间打印多个值。

我很清楚end函数使用的print关键字,但是问题是它在每个值(包括最后一个值)之后都附加了字符串,这正是我所做的不想。

所以,而不是1,2,3,4,;我想要的是1,2,3,4。

更新: 对不起,我不清楚,因为我没有发布代码。在这里:

N = int(input())
p = []
for i in range(N):
    P = str(input())
    p.append(P)
for i in range(N):
    print(p[N-1-i],end=', ')

N设置以下输入的数量,我希望程序在同一行上向后打印每个条目,但每个行都用逗号和空格隔开。我认为sep在这里不太有效。

2 个答案:

答案 0 :(得分:3)

print还接受一个sep参数,该参数指定其他参数之间的分隔符。

>>> print(1, 2, 3, 4, sep=',')
1,2,3,4

如果要打印的东西很多,则可以使用*args语法对其进行包装。

>>> stuff_to_print = [1, 2, 3, 4]
>>> print(*stuff_to_print, sep=',')
1,2,3,4

答案 1 :(得分:1)

import java.io.*;
public class GentCPT3
{
  public static void main (String[] args) throws IOException
  {
    BufferedReader objReader = new BufferedReader(new InputStreamReader (System.in)); 

      System.out.println("Enter key");
      int key1 = Integer.parseInt(objReader.readLine()); // set to 111  

      System.out.println("Enter key2");
      int key2 = Integer.parseInt(objReader.readLine()); // set to 222

      Lock lock1 = new Lock (key1);

      Lock lock2 = new Lock (key2);

      System.out.println(lock1.isOpen()); // prints false

      lock1.close();
      lock2.close();
      lock1.open(111); // opens lock1
      lock2.open(222); // opens lock2111
      lock1.open(123); // fails to open
      lock1.open(456); // fails to open
      lock1.open(789); // fails - prints “Alarm”
    }
  }
class Lock //Initializing class
{
  //Initializing variables
  boolean isOpen;
  int key; 
  int numAttempts = 0;

  Lock(int key) 
  {
    isOpen = false; 
    this.key = key;
  } 

  public void close()//for incorrect combo 
  {
    isOpen = false;
  } 
  public void open(int key)//for correct combo
  { 
    if(this.key == key) 
    {
      isOpen = true;
    } 
    else if(this.key != key && !isOpen) 
    {
      numAttempts++;
    } 
    if(numAttempts == 3) 
    {
      System.out.println("ALARM");//prints alarm when the combo is incorrect **enter code here**3 times
    } 
  } 
}