title: Any suggestions when it shows " TypeError: not enough arguments for format string " in Python?
body: <p>when I try to run an example of Matrix multiplication by pycuda.</p>
  <pre><code>kernel_code_template = &quot;&quot;&quot;
  __global__ void MatrixMulKernel(float *a,float *b,float *c){
      int tx = threadIdx.x;
      int ty = threadIdx.y;
      float Pvalue = 0;
      for(int i=0; i&lt;%(N)s; ++i){
          float Aelement = a[ty * %(N)s + i];
          float Belement = b[i * %(M)s + tx];
          Pvalue += Aelement * Belement;
      }
      c[ty * %[M]s + tx] = Pvalue;
  }
  &quot;&quot;&quot;
  
  M, N = 2, 3
  kernel_code = kernel_code_template % {'M': M, 'N': N}
  </code></pre>
  <p>it reported error like:</p>
  <pre><code>kernel_code = kernel_code_template % {'M': M, 'N': N}
  TypeError: not enough arguments for format string
  </code></pre>
  <p>I've tried to check if there is anything wrong with &quot;%&quot; mark but got nothing yet.</p>