2017-09-01 16 views
-1

すべて私はPythonにとって非常に新しいです。私は可能な空白で入力整数を受け取りたい。ここに例があります。Pythonで入力可能な空白をどこで入力できますか?

if I input 1234 I receive [1,2,3,4]. 
if I input 12 34 I receive [1,2,3,4]. 
if I input 012 4 I receive [0,1,2,4]. 

どうすればいいですか?事前にお手伝いいただきありがとうございます。

+1

何をしたいあなたはライン入力に[PYTの – Netwave

+0

が重複する可能性を解析する必要があり、その後でhon - ユーザー入力整数をリストに分割します。各エントリは2桁です(https://stackoverflow.com/questions/32882040/python-split-user-input-integer-into-list-where-each-entry-is)。 -2桁) – Netwave

答えて

0
data = '12 34' 


data = data.replace(" ", "") 
list = [] 

for d in data: 
    list.append(int(d)) 
print list 
1
input_string = '1234' 
print(list(input_string.replace(' ', ''))) 

input_string ='12 34' 
print(list(input_string.replace(' ', ''))) 

input_string ='012 4' 
print(list(input_string.replace(' ', ''))) 

OUTPUT:

['1', '2', '3', '4'] 
['1', '2', '3', '4'] 
['0', '1', '2', '4'] 
0
import re 
re.findall(r'[0-9]','12 34') 

['1', '2', '3', '4'] 

list(map(int, re.findall(r'[0-9]','012 4'))) 
# To get as integer elements 

[0, 1, 2, 4] 
1

あなたが数字として各文字をテストし、同時にintのリストに変換することができます:

for s in ('1234','12 34', '1 2 3 4', '012 4'): 
    print([int(n) for n in s if n.isdigit()]) 

あるいは、機能的なアプローチを使用してください:

for s in ('1234','12 34', '1 2 3 4', '012 4'): 
    print(map(int,filter(lambda c: c.isdigit(), s))) 
1

あなたが(「あなたの入力を挿入します。」)このyourInput =入力のような入力を受け取ることができます「」あなたは空白を持っている場合は空白で、あなたの文字列を比較することができ

inputIntegers = input("Input your Integers with whitespaces:") 
output = [] 
for i in inputIntegers: 
    if(i != " "): 
     output.append(i) 
をチェックする

出力は、

0
print map(int,''.join("12 3 4".split())) 
関連する問題