Maison >développement back-end >Golang >Comment Golang gère-t-il les entrées ?

Comment Golang gère-t-il les entrées ?

coldplay.xixi
coldplay.xixioriginal
2020-07-18 14:53:434686parcourir

Méthode de traitement des entrées de Golang : 1. [fmt.Scan] accepte les entrées de manière interactive et utilise des espaces pour segmenter les mots ; 2. [fmt.Scanln] spécifie le nom de la variable et le nombre de variables à recevoir ; [fmt .Scanf] Vous devez spécifier le format d'entrée et filtrer directement les parties inutiles.

Comment Golang gère-t-il les entrées ?

Méthode de traitement des entrées de Golang :

1.

Acceptez les entrées de manière interactive et utilisez des espaces pour segmenter les mots. Lorsque vous appelez la fonction Scan, vous devez spécifier le nom de la variable et le nombre de variables à recevoir en entrée.

fmt.ScanLa fonction Scan ne reviendra pas tant que toutes les variables spécifiées ne seront pas reçues, et le caractère de retour chariot ne peut pas la faire revenir à l'avance.

fmt.Println("Please enter the firstName and secondName: ")
fmt.Scan(&afirstName, &asecondName)
fmt.Printf("firstName is %s, secondName is %s\n", afirstName, asecondName)

Les résultats sont les suivants :

Please enter the firstName and secondName:
zz
rr
firstName is zz, secondName is rr

2 fmt.Scanln

Lors de l'appel, vous devez également spécifier le nom de la variable. et le nombre de variables qui reçoivent une entrée.

ScanlnLa différence avec Scan est que

fera revenir la fonction plus tôt et attribuera des variables qui n'ont pas encore reçu de valeurs lors du retour à vide.

fmt.Println("Please enter the firstName and secondName: ")
fmt.Scanln(&bfirstName, &bsecondName)
fmt.Printf("firstName is %s, secondName is %s\n", bfirstName, bsecondName)
n Le résultat est le suivant :

Please enter the firstName and secondName:
zr
firstName is zr, secondName is

3 fmt.Scanf

Utiliser

pour traiter la saisie est une manière plus flexible de traitement.

ScanfVous devez spécifier le format d'entrée. Il convient aux scénarios où le format d'entrée est entièrement compris. Vous pouvez filtrer directement les parties inutiles.

fmt.Println("Please enter the firstName and secondName: ")
fmt.Scanf("//%s\n%s", &cfirstName, &csecondName)
fmt.Printf("firstName is %s, secondName is %s", cfirstName, csecondName)

Les résultats sont les suivants :

1) Dans ce scénario, lors de la réception d'une entrée, les parties inutiles "//" et "n" sont filtrées, et les deux parties utiles sont reçu les chaînes zz et rr.

Please enter the firstName and secondName:
//zz
rr
firstName is zz, secondName is rr

2) Si l'entrée n'est pas conforme au format spécifié, à partir du point de non-conformité, les valeurs des variables suivantes seront vides.

Please enter the firstName and secondName:
//zr ui
firstName is zr, secondName is

Recommandations d'apprentissage associées :
Tutoriel de langue Go

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn