En apprenant R
, je viens de tomber sur le code suivant expliqué here.
open.account <- function(total) {
list(
deposit = function(amount) {
if(amount <= 0)
stop("Deposits must be positive!\n")
total <<- total + amount
cat(amount, "deposited. Your balance is", total, "\n\n")
},
withdraw = function(amount) {
if(amount > total)
stop("You don't have that much money!\n")
total <<- total - amount
cat(amount, "withdrawn. Your balance is", total, "\n\n")
},
balance = function() {
cat("Your balance is", total, "\n\n")
}
)
}
ross <- open.account(100)
robert <- open.account(200)
ross$withdraw(30)
ross$balance()
robert$balance()
ross$deposit(50)
ross$balance()
ross$withdraw(500)
Quel est le plus de mon intérêt sur ce code, l'apprentissage de l'utilisation de "$"
signe dollar qui se réfèrent à une internal function
spécifique en fonction open.account()
. Je veux dire cette partie:
ross$withdraw(30)
ross$balance()
robert$balance()
ross$deposit(50)
ross$balance()
ross$withdraw(500)
Questions:
1- Quelle est la signification du signe du dollar "$"
dans R
function()
?
2- Comment identifier ses attributs dans les fonctions, spécialement pour les fonctions que vous adoptez d'autres (, c'est-à-dire vous ne l'avez pas écrit)?
J'ai utilisé le script suivant
> grep("$", open.account())
[1] 1 2 3
mais il est pas utile, je veux trouver un moyen d'extraire le nom (s) des fonctions internes qui peuvent être référence par « $ » sans juste en appelant et en recherchant la code écrit comme > open.account()
.
Par exemple, en cas de open.account()
je voudrais voir quelque chose comme ceci:
$deposit
$withdraw
$balance
3- Y at-il référence que je peux en lire davantage?
tnx!
Voir le fichier d'aide: '?" $ "'. – lmo