猿问

从字符串中删除 "

with open("p022_names.txt","r") as f:

    for line in f:

        name=[str(v) for v in line.split(",")]

name.sort()

print(name)

tot=0

for i in range(len(name)):

    tot=tot+sum(ord(letter)-64 for letter in name[i])

print(tot)

从文件中读取数据时,它还会在名称中添加“和”。如果名称是 COLIN,它会在列表名称中保存为“COLIN”。我该如何解决?输入文件。


"MARY","PATRICIA","LINDA","BARBARA","ELIZABETH","JENNIFER","MARIA","SUSAN","MARGARET","DOROTHY","LISA","NANCY","KAREN","BETTY","HELEN","SANDRA","DONNA","CAROL","RUTH","SHARON","MICHELLE","LAURA","SARAH","KIMBERLY","DEBORAH","JESSICA","SHIRLEY","CYNTHIA","ANGELA","MELISSA","BRENDA","AMY","ANNA","REBECCA","VIRGINIA","KATHLEEN","PAMELA","MARTHA","DEBRA","AMANDA","STEPHANIE","CAROLYN","CHRISTINE","MARIE","JANET","CATHERINE","FRANCES","ANN","JOYCE","DIANE","ALICE","JULIE","HEATHER","TERESA","DORIS","GLORIA","EVELYN","JEAN","CHERYL","MILDRED","KATHERINE","JOAN","ASHLEY","JUDITH","ROSE","JANICE","KELLY","NICOLE","JUDY","CHRISTINA","KATHY","THERESA","BEVERLY","DENISE","TAMMY","IRENE","JANE","LORI","RACHEL","MARILYN","ANDREA","KATHRYN","LOUISE","SARA","ANNE","JACQUELINE","WANDA","BONNIE","JULIA","RUBY","LOIS","TINA","PHYLLIS","NORMA","PAULA","DIANA","ANNIE","LILLIAN","EMILY","ROBIN","PEGGY","CRYSTAL","GLADYS","RITA","DAWN","CONNIE","FLORENCE","TRACY","EDNA","TIFFANY","CARMEN","ROSA","CINDY","GRACE","WENDY","VICTORIA",

输出 ['"MARY"','"..."','"..."',..]


阿晨1998
浏览 204回答 3
3回答

繁花不似锦

如果您想从字符串中删除这些字符,您可以执行以下操作:s = s.replace("\"","")这将"用空字符串替换所有实例。如果您只想将它们从字符串的末端移除,您可以这样做s = s.strip("\"")如果您想确保只从每一端删除一个引号,您可以执行以下操作:if s.startswith("\""):    s = s[1:]elif s.endswith("\""):    s = s[:-1]如果您知道字符串将始终带有引号,则可以将其简化为:s = s[1:-1]然而,这个文件似乎是一个 csv 文件,使用csvlib解析这些文件要好得多。

缥缈止盈

这是我的解决方案。它支持以逗号分隔的行中的多个名称,也支持文件中的多行。names = []with open('p022_names.txt') as f:    for line in f:        names.extend(v.lower().strip('"').strip("'") for v in line.split(","))names.sort()for name in names:    tot = sum(ord(letter)-96 for letter in name)    print("{0}: {1}".format(name, tot))
随时随地看视频慕课网APP

相关分类

Python
我要回答