如何用字符串删除python中的括号?

时间:2015-04-08 21:46:20

标签: python string brackets

我有这个程序:

import sys
students = []
grades = []

while True:
    student = input ("Enter a name: ").replace(" ","")
    if  student.isalpha() == True and student != "0":
        while True:
            grade = input("Enter a grade: ").replace(" ","")
            if grade == "0" or grade == 0:
                print ("\n")
                print ("A zero is entered.")
                sys.exit(0)
            if grade.isdigit()== True: 
                grade = int(grade)
                if grade >= 1 and grade <= 10:
                    if student in students:
                        index = students.index(student)
                        grades[index].append(grade)
                        break
                    else:
                        students.append(student)
                        grades.append([grade])
                        break
                else:
                    print("Invalid grade.")
    elif student == "0": 
        print("A zero is entered.")
        break
    else:
        print ("Invalid name.")
for i in range(0,len(students)): 
    print("NAME: ", students[i])
    print("GRADE: ", grades[i])
    print("AVERAGE: ", round(sum(grades[i])/len(grades[i]),1), "\n")

例如,我需要在程序打印时让[]在数字之间消失。

输入数字时,如下所示:

Enter a name: Jack
Enter a grade: 8
Enter a name: Jack
Enter a grade: 9
Enter a name: Jack
Enter a grade: 7
Enter a name: 0
A zero is entered.

打印方式如下:

NAME:  Jack
GRADE:  [8, 9, 7]
AVERAGE:  8.0 

但是我需要这样打印的程序:

 NAME:  Jack
 GRADE:  8, 9, 7
 AVERAGE:  8.0 

成绩应该没有括号。 我想我需要使用字符串或其他东西,有人知道怎么做?

3 个答案:

答案 0 :(得分:2)

strip允许您从开头和结尾删除指定的字符。

str(grades[i]).strip('[]')

答案 1 :(得分:1)

如果grades是整数列表的列表:

print(', '.join(str(i) for i in grades[g])) # where g sublist index

答案 2 :(得分:1)

首先:

>>> grades = [[1,2,3],[4,5,6]]

现在你有几个选择:

>>> print("GRADE:", *grades[0])
GRADE: 1 2 3

或:

>>> print("GRADE:", ', '.join(map(str, grades[0])))
GRADE: 1, 2, 3

或者,在脚本或块中:

print("GRADE: ", end='')
print(*grades[0], sep=', ')

上述结果:

GRADE: 1, 2, 3

根据需要将[0]替换为[i]