R'de, pipe()
kullanarak bir boru bağlantısı açabilir ve ona yazabiliriz. Tam olarak anlamadığım şu durumu gözlemledim. s örneğin bir python
boru kullanalım:R bağlantısında kapatmadan önce bir boru bağlantısından nasıl çıkış alınır?
print()
çıktısı hemen R konsolunda gösterilecektir, ama aslında çıkış I boru bağlantısını kapatmak sonra geliyor nedir bekliyordum
z = pipe('python', open='w+')
cat('x=1\n', file=z)
cat('print(x)\n', file=z)
cat('print(x+2)\n', file=z)
cat('print(x+2\n', file=z)
cat(')\n', file=z)
close(z)
> z = pipe('python', open='w+')
>
> cat('x=1\n', file=z)
> cat('print(x)\n', file=z)
> cat('print(x+2)\n', file=z)
> cat('print(x+2\n', file=z)
> cat(')\n', file=z)
>
> close(z)
1
3
3
Benim sorum şu ki, bağlantıyı kapatmadan önce çıkışı nasıl alabilirim? Bu sorunun
> z = pipe('python', open='w+')
>
> cat('x=1\n', file=z)
> cat('print(x)\n', file=z)
> cat('print(x+2)\n', file=z)
> cat('print(x+2\n', file=z)
> cat(')\n', file=z)
>
> x = capture.output(close(z))
1
3
3
> x
character(0)
arka plan knitr
engines: ya, bu capture.output()
kullanarak çıkış yakalamak mümkün görünmüyor unutmayın. Python gibi yorumlanmış diller için, kalıcı bir "terminal" açabilmeyi diliyorum, böylece kod yazmayı ve çıktı almayı başarabileyim. Yine de, pipe()
'un doğru yol olup olmadığından emin değilim.