Pomocí prime "'" v Julia proměnné

0

Otázka

Mám mnoho proměnných, a matice, které bych chtěl volat s předsedou, jako je:

xprime, yprime, rprime a tak dále.

Domnívám se, že nemůžu použít x', y', r' atd. jako je například použít pro matice transponována.

julia> x' = 5
ERROR: syntax: invalid assignment location "x'" around REPL[2]:1
Stacktrace:
 [1] top-level scope at REPL[2]:1

julia> x = [1,2]
2-element Array{Int64,1}:
 1
 2

julia> x'
1×2 LinearAlgebra.Adjoint{Int64,Array{Int64,1}}:
 1  2

Jsem otevřen pro všechny návrhy pohodlnější způsob, než xprime, yprime atd. což je docela dlouhá a ošklivá myslím.

julia variables
2021-11-22 13:53:52
1

Nejlepší odpověď

10

Můžete použít prime:

julia> x′ = 1
1

julia> x′
1

help?> ′
"′" can be typed by \prime<tab>

Všimněte si rozdílu, že mohu použít (prime), když jste se pokusili použít ' (single quote). Pomocí apostrof není povoleno v názvu proměnné jako to vyvolá adjungované operace na hodnotu předchozí (což můžete vidět ve vašem příkladu).

Jak je vysvětleno v nápovědě můžete jej zadejte v Julia REPL a ve většině editorů nakonfigurován k podpoře Julia zadáním \prime a stisknutím klávesy Tab.

2021-11-22 14:38:24

To může splnit původní cíle, ale musím říct, že to je čisté zlo ze stand-bod čitelnost. Naivní čtenář bude pravděpodobně mít tušení, že \prime je používán místo toho jeden citát. To je podobné jako použití vyšší případě Alfa jako název proměnné. Vidět gist.github.com/tdunning/219ec70253542253cd66f1021d57e677 pro příklad.
Ted Dunning

Souhlasím - také bych nedoporučoval používat libovolný znak sekvence, které bude změněn, pokud někdo používá Unicode normalization na pořadí, jak to vede k matení uživatelů.
Bogumił Kamiński

Takže na konci, doporučuji použít xprime, rprime jako jsem to udělal jako první?
JKHA

To závisí. Pokud máte v úmyslu váš kód bude číst jinými uživateli bez jakéhokoli odkazu pak asi ano. Nicméně, pokud váš kód nepoužívá lineární algebry (takže neexistuje žádné riziko záměny s adjoint) a např. svůj kód přejímá doslovně matematické vzorce z nějakého papíru (prime, kde se používá), pak si myslím, že to je v POŘÁDKU, aby ji používat. Ve shrnutí bych řekl: musíte si být jisti, že notace použití nevede k čtenáři zmatek. Dalším příkladem je, že programátoři jsou obvykle odradit od tvorby proměnné s názvem l jako v mnoha písma to vypadá velmi podobně jako 1.
Bogumił Kamiński

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................