开关/机箱Matlab。Python的等价物是什么?

开关/机箱Matlab。Python的等价物是什么?,python,matlab,Python,Matlab,我需要帮助将这个switch语句从Matlab转换成与Python等价的东西。有没有一种简单的方法可以像if语句那样实现呢 switch nmax case 0 Tk( 1, : ) = ones( 1, length( x ) )/sqrt(N); case 1 Tk( 2, : ) = (w ./ w1).*ones( 1, length( x ) )/sqrt(N); otherwise Tk( 1, : ) = on

我需要帮助将这个switch语句从Matlab转换成与Python等价的东西。有没有一种简单的方法可以像if语句那样实现呢

switch nmax
    case 0
        Tk( 1, : ) = ones( 1, length( x ) )/sqrt(N);
    case 1
        Tk( 2, : ) = (w ./ w1).*ones( 1, length( x ) )/sqrt(N);
    otherwise
        Tk( 1, : ) = ones( 1, length( x ) )/sqrt(N);
        Tk( 2, : ) = (w ./ w1).*Tk( 1, : );

        for m = 3:nmax
            ni=m-1;
            w2_A = N^2-ni^2;
            w2_B = (2*ni+1)*(2*ni-1);
            w2   = ni*sqrt(w2_A/w2_B);
            Tk(m,:) = w./w2.*Tk(m-1,:) - w1/w2*Tk(m-2,:);
        
            w1 = w2;
            T = Tk(m,:);
            for k=0:ni
                Tk(m,:) =  Tk(m,:) - sum(T.*Tk(k+1,:))*Tk(k+1,:);
            end
            h=sqrt(sum(Tk(m,:).^2));
            Tk(m,:) = Tk(m,:)/h;
        end

Python没有switch语句,因此必须使用if/else

如果nmax==0:这等于您的案例0 做点什么 elif nmax==1:这等于您的案例1 做点什么 否则:这与你的情况相同 做点什么
使用if语句。欢迎使用堆栈溢出!请拿着这本书,读一读。您可以在internet上找到大量优秀的资源,可能还有许多问题,以便处理类似的问题。Stack Overflow不打算取代现有的文档和教程。我们希望您在发布问题之前进行适当的研究。这是一个简单的浏览器搜索。谢谢。这就是我所用的,但我不确定它是否会与我所做的一些研究完全相同,没有完全澄清它