74127


私の代入のどこが、おかしいですか？  
myV0に整数しか入らないと思っていました。

(参考)  
[python
のitertools.permutationsの使い方を教えて下さい。全部の組み合わせの作り方を教えて下さい。](https://ja.stackoverflow.com/questions/73763/python-%e3%81%aeitertools-
permutations%e3%81%ae%e4%bd%bf%e3%81%84%e6%96%b9%e3%82%92%e6%95%99%e3%81%88%e3%81%a6%e4%b8%8b%e3%81%95%e3%81%84-%e5%85%a8%e9%83%a8%e3%81%ae%e7%b5%84%e3%81%bf%e5%90%88%e3%82%8f%e3%81%9b%e3%81%ae%e4%bd%9c%e3%82%8a%e6%96%b9%e3%82%92%e6%95%99%e3%81%88%e3%81%a6%e4%b8%8b%e3%81%95%e3%81%84/73774#73774)

[code]

    from sympy import *
    var('V0 V1 myV0 myV1')
    my_list=list(range(2))
    print(my_list)
    for v0 in my_list:
        for v1 in my_list:
            myV0=V0
            myV1=V1
            print(v0,v1,myV0,myV1)
    # [0, 1]
    # 0 0 V0 V1
    # 0 1 V0 V1
    # 1 0 V0 V1
    # 1 1 V0 V1
    
[/code]


CC BY-SA 4.0
2021-02-18T12:08:39.293
74108
2021-02-23T03:59:58.343
2021-02-23T03:59:58.343
3060
17199
question
python sympy
sympyの代入方法を教えて下さい。


Pythonは大文字と小文字を区別します。

[code]

            myV0=V0
            myV1=V1
    
[/code]

の右辺を

[code]

            myV0=v0
            myV1=v1
    
[/code]

のようにしてください。

追記:
[`sympy.var()`](https://docs.sympy.org/latest/modules/core.html#var)はシンボルを返すだけでなく、グローバルスコープに変数を定義します。つまり、

[code]

    var('V0 V1 myV0 myV1')
    
[/code]

によって、`V0`、`V1`、`myV0`、`myV1`が定義されてしまっているので、

[code]

            myV0=V0
            myV1=V1
    
[/code]

と誤って書いてしまっても`V0`や`V1`は未定義エラーを起こしません。

グローバルスコープに変数を定義したくないのであれば[`sympy.var()`](https://docs.sympy.org/latest/modules/core.html#var)ではなく[`sympy.symbols()`](https://docs.sympy.org/latest/modules/core.html#symbols)を使うべきです。


CC BY-SA 4.0
2021-02-19T05:12:14.930
74127
2021-02-23T02:26:39.047
2021-02-23T02:26:39.047
36010
36010
74108
answer


pycharmでpylintしてみました。'V0','V1'(undefined-variable)でした。

[code]

    C:\Users\USER\PycharmProjects\pythonProject1\venv\Scripts\pylint.exe C:\Users\USER\PycharmProjects\pythonProject\main.py
    ************* Module main
    C:\Users\USER\PycharmProjects\pythonProject\main.py:8:13: E0602: Undefined variable 'V0' (undefined-variable)
    C:\Users\USER\PycharmProjects\pythonProject\main.py:9:13: E0602: Undefined variable 'V1' (undefined-variable)
    他
    
[/code]

直しました。

[code]

    from sympy import *
    my_list=list(range(2))
    print(my_list)
    
    for v0 in my_list:
        for v1 in my_list:
            myV0=v0
            myV1=v1
            print(v0,v1,myV0,myV1)
    # [0, 1]
    # 0 0 0 0
    # 0 1 0 1
    # 1 0 1 0
    # 1 1 1 1
    
[/code]


CC BY-SA 4.0
2021-02-22T13:08:19.547
74207
2021-02-22T13:08:19.547
17199
74108
answer