我将如何执行此操作?Python

我对 python 很陌生,想知道如何编写一个程序,要求用户输入一个包含字母“a”的字符串。然后,在第一行,程序应该打印字符串的一部分,直到并包括某个字母,第二行应该是字符串的其余部分。例如...


Enter a word: Buffalo

Buffa 

lo

这是我到目前为止:


text = raw_input("Type something: ")

left_text = text.partition("a")[0]

print left_text

所以,我已经弄清楚打印字符串的第一部分一直到某个字母,但不知道如何打印字符串的其余部分。


任何帮助,将不胜感激


茅侃侃
浏览 179回答 3
3回答

慕容3067478

如果您想要的是某个字符的第一次出现,您可以使用str.find它。然后,根据该索引将字符串分成两部分!在python 3中:split_char = 'a'text = input()index = text.find(split_char)left = text[:-index]right = text[-index:]print(left, '\n', right)我手头没有 python2 来确定,但我认为这应该适用于 python 2:split_char = 'a'text = raw_input()index = text.find(split_char)left = text[:-index]right = text[-index:]print left + '\n' + right)另一个更简洁的选项是使用left_text, sep, right_text = text.partition("a")print (left_text + sep, '\n', right_text)

温温酱

首先找到给定字符串中字符的索引,然后使用索引相应地打印字符串。蟒蛇 3string=input("Enter string")def find(s, ch):    return [i for i, ltr in enumerate(s) if ltr == ch]indices=find(string, "a")for index in indices[::-1]:    print(string[:index+1])print(string[indices[-1]+1:])

汪汪一只猫

您应该对切片和连接字符串或列表有一定的了解。你可以在这里学习它们切片和连接word = raw_input('Enter word:')  # raw_input in python 2.x and input in python 3.xsplit_word = raw_input('Split at: ')splitting = word.partition(split_word)'''Here lets assume,   word = 'buffalo'   split_word = 'a'   Then, splitting variable returns list, storing three value,           ['buff', 'a', 'lo']   To get your desire output you need to do some slicing and concatenate some value .'''output = '{}\n{}'.join(splitting[0] + splitting[1], splitting[2])print(output) 
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python