首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Python: array和print()格式

Python: array和print()格式
EN

Stack Overflow用户
提问于 2018-07-18 08:49:27
回答 2查看 19.1K关注 0票数 1

我正在尝试实现一个将array_1更改为array_2的函数,以便array_2产生与array_1相同的输出。例如:

代码语言:javascript
复制
for item in array_1: 
    print(item, end ='')

我希望下面的代码产生与上面的代码相同的输出:

代码语言:javascript
复制
for item in array_2:
    print(item) 

array_1 = ["Hello", "World", '\n', '\n', "This", "is", '\n', "a", "textarray"]

在第一段代码中运行这段代码,结果如下:

代码语言:javascript
复制
HelloWorld

Thisis
atextarray

我应该如何实现将array_1更改为array_2的函数,以使其产生与上面相同的输出?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-07-18 09:36:04

由于您真正要做的就是更改print的默认行为,使其在默认情况下不输出尾随换行符,因此可以使用functools.partialend=''设置为默认参数。这样,您就不需要担心从array_1创建新列表了。

代码语言:javascript
复制
from functools import partial
print = partial(print, end='')
array_1 = ["Hello", "World", '\n', '\n', "This", "is", '\n', "a", "textarray"]
for item in array_1:
    print(item)

这将输出以下内容:

代码语言:javascript
复制
HelloWorld

Thisis
atextarray
票数 2
EN

Stack Overflow用户

发布于 2018-07-18 09:03:20

在程序开始时,在给array_1赋值之后,您可以简单地编写array_2 = array_1

另外,让您的第一段代码成为一个带有参数x的函数,这样您就可以将array_1和array_2放在一起。你的最终代码应该是这样的:

代码语言:javascript
复制
array_1 = ["Hello", "World", '\n', '\n', "This", "is", '\n', "a", "textarray"]
array_2 = array_1
def arr(x):
    for item in x: 
        print(item, end ='')

然后,您可以在发送此函数时不同地放置array_1或array_2。

代码语言:javascript
复制
arr(array_1)
arr(array_2)

这些应该会给你相同的值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51392013

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档