В C++ мы можем вводить несколько строк, предоставляя свой собственный выбор разделительного символа в функции getline(). Однако я не могу сделать то же самое в Python !! он имеет только методы raw_input() и sys.stdin.readline(), которые читаются до тех пор, пока я не нажму кнопку enter. Есть ли способ настроить это, чтобы я мог указать свой собственный разделитель?Python эквивалент C++ getline()
ответ
Вы все еще хотите нажать enter, чтобы создать несколько строк? Как вы заканчиваете ввод? Или вы хотите указать несколько строк в одной строке?
Если первое, то попробуйте зацикливание raw_input() пока что-то написано, что говорит его остановить:
lines = []
while True:
user_input = raw_input()
if user_input.strip() == "": # empty line signals stop
break
lines.append(user_input)
Или указать несколько строк на одной строке, используя разделитель:
lines = raw_input().split(";")
Вы можете попробовать немного изменить этот метод, чтобы использовать его и использовать его в своей программе.
Во-первых, импортировать модуль linecache:
import linecache
Модуль linecache позволяет получить доступ к любой строки из любого файла. Из трех методов, которые вы, скорее всего, будете использовать больше всего, - getline. Синтаксис GetLine выглядит следующим образом:
linecache.getline('filename', line_number)
Если у вас есть файл с именем «myfile.txt» и хотели бы строку 138 из него читать, GetLine позволяет сделать это с легкостью.
retrieved_line = linecache.getline('myfile.txt', 138)
Затем вы можете просто распечатать retrieved_line или иным образом манипулировать данными строки 138, не делая операции над самим файлом.
спасибо за ур предложение .. :-) –
Вам нужно будет реализовать такую функцию самостоятельно. Например:
def getline(stream, delimiter="\n"):
def _gen():
while 1:
line = stream.readline()
if delimiter in line:
yield line[0:line.index(delimiter)]
break
else:
yield line
return "".join(_gen())
import sys
getline(sys.stdin, ".")
это тоже good..will увидеть, один я, наконец, использовать .... –
- 1. getline() эквивалент в Swift
- 2. эквивалент Python в C++?
- 3. Python эквивалент C# .Выбрать?
- 4. C++ эквивалент Python GetAttr
- 5. C# эквивалент Python repr()
- 6. C эквивалент Python crypto.crypto()
- 7. Эквивалент python: scipy.optimize() в C++?
- 8. C# Parallel.Foreach эквивалент в Python
- 9. C эквивалент регулярного выражения Python
- 10. python struct.pack эквивалент в C++
- 11. C# эквивалент rjust в python
- 12. Эквивалент кода Python в C#?
- 13. Python эквивалент указателя элемента C++
- 14. Python эквивалент функции R c()?
- 15. C++-эквивалент библиотеки «construct» Python
- 16. Python эквивалент для выражения C
- 17. Python эквивалент C# LINQ's select
- 18. C# эквивалент для python pdb.set_trace()
- 19. Программа пропускает GetLine()/C++
- 20. C++ Getline & seekg
- 21. C++ std :: getline error
- 22. C++ getline и stringstream
- 23. Getline & cin.ignore в C++
- 24. C++ getline() function
- 25. C++ timeout on getline
- 26. C++: Механизм функции Getline
- 27. C++ разделение запятой/getline
- 28. Остановка getline в C
- 29. Использование GetLine() в C++
- 30. C++ getline и append
это устраивает мое дело просто отлично .. :-) –