设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 创业者 数据 手机
当前位置: 首页 > 综合聚焦 > 编程要点 > 资讯 > 正文

复制并输出一个“数组”,Python 和 C++ 分别需要什么流程?

发布时间:2021-05-28 03:45 所属栏目:50 来源:互联网
导读:
导读:已知一个数组,请复制并输出此数组的一份拷贝。 我们分别用 C++ 和 Python 进行实现。 【C++ 版】 #includevector #includeiostream #includeiterator usingname

已知一个数组,请复制并输出此数组的一份拷贝。

我们分别用 C++ 和 Python 进行实现。

【C++ 版】

#include <vector> 

#include <iostream> 

#include <iterator> 

using namespace std; 

 

int main() 

    vector<int> v1 = {1, 2, 3, 4, 5}; 

     

    vector<int> v2; 

    v2.assign(v1.begin(), v1.end()); 

    copy(v2.begin(), v2.end(), ostream_iterator<int>(cout, " ")); 

     

    return 0; 

C++ 可以使用 STL 中的 vector 来表示一个数组。使用 vector 的 assign 函数就可以实现复制操作,很简单。

但是,如果要将 vector 输出,除了使用 for 循环外,我们需要借助 STL 中的 copy 算法,才可以实现简短优雅的输出,而这其中又牵涉到 ostream_iterator 这样的并不经常使用的特性。

【Python 版】

alst = [1, 2, 3, 4, 5] 

 

blst = [] 

blst.extend(alst) 

print(blst) 

 

#更 Pythonic 

clst = [] 

clst[:] = alst 

print(clst) 

Python 代码就简单明了很多了。我们使用 list 来表示数组,可使用 list 的 extend 方法来复制一个 list。还可以使用切片语法实现复制。

当然,不像 C++ 中的 vector 只能存储同一种类型的数据,Python list 可以混合存放任何类型的数据。的确方便高效!

【结语】

复制并输出一个数组,Python 和 C++ 都可以使用短短两行代码来实现。

但是二者对于代码编写者的技能熟练度要求还是不同的。从易用性来讲,Python 还是具有明显优势的。

曾经一句“PHP 是世界上最好的语言”就足以引起程序员之间的战争,这种争论其实是没有必要的。

(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读