python里面如何将print输出的那个值赋值给变量?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python里面如何将print输出的那个值赋值给变量?相关的知识,希望对你有一定的参考价值。

参考技术A str1=
这里你写
print那个括号里面的东西就可以啦。
这样就存储到str1了

如何将python三个方法输出在同一行

def s1():
print 'Happy,';

def s2():
print 'New,';

def s3():
print 'Year!';
以上是三个方法,怎么用第四个方法s4调用这三个方法让输出在同一行显示啊?

允许改这三个函数的话,就把print语句最后的分号改成逗号,然后在s4里面调用者三个函数就行了。

如果不允许改这三个函数的话,

def s1():
print 'Happy,';

def s2():
print 'New,';

def s3():
print 'Year!';

def s4():
import sys
with open('temp.txt','w') as file:
sys.stdout=file
s1(),s2(),s3()
sys.stdout=sys.__stdout__
with open('temp.txt','r') as file:
s=file.read()
print s.replace('\\n',' ')


s4()

参考技术A 你将三个print后面的分号换成逗号就成了。 这个不难啊。

def s4():
s1()
s2()
s3()

这样就可以了。本回答被提问者和网友采纳
参考技术B

简单一点的话把三个print后面的分号换成逗号就行了。

如果不能修改这三个方法的话可以用如下代码:

import sys
try:
    from cStringIO import StringIO
except ImportError as e:
    from StringIO import StringIO

def s4():
    origin_stdout = sys.stdout
    new_stdout = StringIO()
    sys.stdout = new_stdout
    s1()
    s2()
    s3()
    sys.stdout = origin_stdout
    new_stdout.seek(0)
    string = new_stdout.read()
    print string.replace("\\n", "")

参考技术C

把这三个函数的print改成return,然后

def s4():
    print s1()+s2()+s3()

以上是关于python里面如何将print输出的那个值赋值给变量?的主要内容,如果未能解决你的问题,请参考以下文章

python中,如何将list中的各个值快速赋值给变量

Python 里面什么时候用一个=,什么时候用两个=

Python从菜鸟到高手:print函数赋值与代码块

python数组赋值

Python 中如何打印变量值

python如何把输出的字符串赋值给变量