第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Python2:寫入交互過程的標(biāo)準(zhǔn)輸入,使用 Popen.communicate(),沒有尾隨換行符

Python2:寫入交互過程的標(biāo)準(zhǔn)輸入,使用 Popen.communicate(),沒有尾隨換行符

動漫人物 2021-09-11 20:59:39
我正在嘗試編寫我認(rèn)為是調(diào)用不同命令的簡單實(shí)用程序腳本,但 Popen.communicate() 似乎附加了一個換行符。我想這是終止輸入,它與一個基本腳本一起工作,該腳本接受輸入并將其打印出來,但是當(dāng)另一個程序是交互式的(例如bc)時,它會導(dǎo)致問題 。要重現(xiàn)的最少代碼,使用 bc 代替其他程序(因?yàn)閮烧叨际墙换ナ降?,讓它與 bc 一起工作應(yīng)該可以解決問題):#!/usr/bin/env pythonfrom subprocess import Popen, PIPEcommand = "bc"p = Popen(command, stdin=PIPE, stdout=PIPE, stderr=PIPE)stdout_data = p.communicate(input="2+2")print(stdout_data)這打印('', '(standard_in) 1: syntax error\n'),大概是由附加的換行符引起的,因?yàn)樵?shell 中將相同的字符串輸送到 bc echo "2+2" | bc,打印4得很好。是否可以在不附加換行符的情況下使用 Popen.communicate() ,或者我是否需要使用不同的方法?
查看完整描述

1 回答

  • 1 回答
  • 0 關(guān)注
  • 356 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號