小编Zin*_*Zhu的帖子

Python 修改函数内的列表

我试图让函数通过将列表的引用传递给它来修改列表。下面的程序显示,当我将列表传递给函数时,只生成了一个局部变量。有什么方法可以从函数中的列表中选择一些成员?谢谢你。

def func(list1):
    list1 = list1[2:]    
    print(list1)   # prints [2, 3]

list1 = [0, 1, 2, 3]
func(list1)
print(list1)       # prints [0, 1, 2, 3]
Run Code Online (Sandbox Code Playgroud)

Edit1:我也尝试使用以下功能。它也不起作用。也许是因为在 func2 list1 变成了一个引用 list2 的局部变量。

def func2(list1):
    list2 = list1[2:]    
    list1 = list2
    print(list1)   # prints [2, 3]

list1 = [0, 1, 2, 3]
func(list1)
print(list1)       # prints [0, 1, 2, 3]
Run Code Online (Sandbox Code Playgroud)

python function list

4
推荐指数
1
解决办法
6238
查看次数

如何修改矢量成员的值?

我试图使用矢量svec来存储一些字符串值.但是在Dev C++ 5.6.1编译时,编译器报告了"不匹配operator ="的错误.为什么会出现此错误以及如何解决?谢谢.

    #include<vector>
    #include<iostream>
    #include<string>
    using namespace std;
    int main() {
        vector<string> svec[100];
        for (int i = 0; i < 100; ++i) {
            svec[i] = "ABC";
        }
        return 0;
    }
Run Code Online (Sandbox Code Playgroud)

[错误]'operator ='不匹配(操作数类型是'std :: vector>'和'const char [4]')

编辑:问题出在矢量svec [100]; 把它改成矢量svec(100)后情况顺利;

edit2:我很好奇编译器对以下声明的看法.svec仍被宣布为矢量吗?

vector<string> svec[100];
Run Code Online (Sandbox Code Playgroud)

c++ vector operators

2
推荐指数
1
解决办法
148
查看次数

标签 统计

c++ ×1

function ×1

list ×1

operators ×1

python ×1

vector ×1