我想在python中进行用户输入,类似于c ++中使用的 getchar()函数。
c ++代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
char ch;
while(1){
ch=getchar();
if(ch==' ') break;
cout<<ch;
}
return 0;
}
输入:堆栈溢出
输出:堆栈
在上面的代码中,当用户输入的空间比循环中断时。 我想在python中使用 getchar()类型函数在c ++代码中使用它。
答案 0 :(得分:2)
最简单的方法:
只需使用拆分功能
a = input('').split(" ")[0]
print(a)
使用STDIN:
import sys
str = ""
while True:
c = sys.stdin.read(1) # reads one byte at a time, similar to getchar()
if c == ' ':
break
str += c
print(str)
在行动here
中查看此内容使用readchar:
使用pip install readchar
然后使用以下代码
import readchar
str = ""
while(1):
c = readchar.readchar()
if c == " ":
break
str += c
print(c)
答案 1 :(得分:1)
ans = input().split(' ')[0]
这样的事情可以解决问题
答案 2 :(得分:1)
import msvcrt
str = ""
while True:
c = msvcrt.getch() # reads one byte at a time, similar to getchar()
if c == ' ':
break
str += c
print(str)
msvcrt
是一个内置模块,您可以在official documentation中了解更多信息。
答案 3 :(得分:0)
a = input('') # get input from stdin with no prompt
b = a.split(" ") # split input into words (by space " " character)
# returns a list object containing individual words
c = b[0] # first element of list, a single word
d = c[0] # first element of word, a single character
print(d)
#one liner
c = input('').split(" ")[0][0]
print(c)