Zephyrnet-logo

Het onderscheid begrijpen tussen %s en %d in Python String Formatting

Datum:

Python is een populaire programmeertaal die veel wordt gebruikt voor verschillende toepassingen. Een van de belangrijkste kenmerken van Python zijn de mogelijkheden voor het formatteren van tekenreeksen. Tekenreeksopmaak is het proces waarbij een opgemaakte tekenreeks wordt gemaakt door tijdelijke aanduidingen te vervangen door waarden. In Python wordt de tekenreeksopmaak gedaan met behulp van de %-operator. Er zijn echter twee verschillende tijdelijke aanduidingen die kunnen worden gebruikt met de %-operator: %s en %d. In dit artikel zullen we het onderscheid onderzoeken tussen %s en %d in de opmaak van Python-tekenreeksen.

De %s tijdelijke aanduiding

De tijdelijke aanduiding %s wordt gebruikt om een ​​tekenreekswaarde weer te geven. Bij gebruik van de tijdelijke aanduiding %s moet de waarde die in de tekenreeks wordt ingevoegd een tekenreeks zijn. Beschouw bijvoorbeeld de volgende code:

''

naam = "Jan"

leeftijd = 25

print(“Mijn naam is %s en ik ben %d jaar oud.” % (naam, leeftijd))

''

In deze code wordt de tijdelijke aanduiding %s gebruikt om de naamvariabele weer te geven, wat een tekenreeks is. De waarde van de naamvariabele wordt in de tekenreeks ingevoegd met behulp van de %-operator. De uitvoer van deze code zou zijn:

''

Mijn naam is Jan en ik ben 25 jaar oud.

''

Zoals u kunt zien, wordt de waarde van de naamvariabele ingevoegd in de tekenreeks in plaats van de tijdelijke aanduiding %s.

De %d tijdelijke aanduiding

De tijdelijke aanduiding %d wordt gebruikt om een ​​geheel getal weer te geven. Bij gebruik van de tijdelijke aanduiding %d moet de waarde die in de tekenreeks wordt ingevoegd een geheel getal zijn. Beschouw bijvoorbeeld de volgende code:

''

naam = "Jan"

leeftijd = 25

print(“Mijn naam is %s en ik ben %d jaar oud.” % (naam, leeftijd))

''

In deze code wordt de tijdelijke aanduiding %d gebruikt om de leeftijdsvariabele weer te geven, wat een geheel getal is. De waarde van de leeftijdsvariabele wordt in de tekenreeks ingevoegd met behulp van de %-operator. De uitvoer van deze code zou zijn:

''

Mijn naam is Jan en ik ben 25 jaar oud.

''

Zoals u kunt zien, wordt de waarde van de leeftijdsvariabele ingevoegd in de tekenreeks in plaats van de tijdelijke aanduiding %d.

Het verschil tussen %s en %d

Het belangrijkste verschil tussen %s en %d is het type waarde dat ze vertegenwoordigen. De tijdelijke aanduiding %s wordt gebruikt voor tekenreekswaarden, terwijl de %d tijdelijke aanduiding wordt gebruikt voor gehele waarden. Als u de verkeerde tijdelijke aanduiding voor een waarde probeert te gebruiken, krijgt u een TypeError.

Beschouw bijvoorbeeld de volgende code:

''

naam = "Jan"

leeftijd = "25"

print(“Mijn naam is %s en ik ben %d jaar oud.” % (naam, leeftijd))

''

In deze code is de leeftijdsvariabele een tekenreeks in plaats van een geheel getal. Wanneer we het proberen in te voegen in de string met behulp van de %d tijdelijke aanduiding, krijgen we een TypeError:

''

TypeError: %d formaat: een getal is vereist, geen str

''

Om deze fout op te lossen, moeten we in plaats daarvan de %s placeholder gebruiken:

''

naam = "Jan"

leeftijd = "25"

print(“Mijn naam is %s en ik ben %s jaar oud.” % (naam, leeftijd))

''

In deze code hebben we de tijdelijke aanduiding %s gebruikt voor zowel de variabelen naam als leeftijd. De uitvoer van deze code zou zijn:

''

Mijn naam is Jan en ik ben 25 jaar oud.

''

Conclusie

Concluderend, het begrijpen van het onderscheid tussen %s en %d bij het formatteren van Python-tekenreeksen is belangrijk voor het maken van correct opgemaakte tekenreeksen. De tijdelijke aanduiding %s wordt gebruikt voor tekenreekswaarden, terwijl de %d tijdelijke aanduiding wordt gebruikt voor gehele waarden. Als u de verkeerde tijdelijke aanduiding voor een waarde probeert te gebruiken, krijgt u een TypeError. Door voor elke waarde de juiste tijdelijke aanduiding te gebruiken, kunt u opgemaakte tekenreeksen maken die gemakkelijk te lezen en te begrijpen zijn.

spot_img

Laatste intelligentie

spot_img

Chat met ons

Hallo daar! Hoe kan ik u helpen?