Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: String manipulatie in Python.  (gelezen 995 keer)

Offline henkoegema

  • Lid
    • PA2HO
  • Steunpunt: Nee
String manipulatie in Python.
« Gepost op: 2019/02/25, 17:36:15 »
Programmeers taal: Python  (Micropython)

Ik heb 2 strings (A en B)

A=[21.49C1033.56hPa31.76%4.20]  26 characters
B=[21.5C1033.66hPa31.75%4.20]   25 characters

De eerste 6 characters van string A zijn: 21.49C
De eerste 5 characters van string B zijn: 21.5C

String B is 1 character korter dan string A.
De eerste 6 char. van string A bevat de waarde van een sensor in graden C (21.49C)
De eerste 5 char. van string B bevat de waarde van dezelfde  sensor op een ander tijdstip,  in graden C (21.5C)

Hoe kan ik die 21.5 (in de string) veranderen in 21.50 (dus met de extra 0) ?
String A en string B moeten dus altijd even lang zijn. (26 tekens)




Miscere utile dulci. (Ter leering ende vermaeck)
http://henk.oegema.com  (On RaspberryPi2)
Registered linux user 520520.  In gebruik: Ubuntu 18.04.  Radio Amateur callsign: PA2HO Interesses: Raspberry Pi & Arduino

Offline MKe

  • Lid
  • Steunpunt: Nee
Re: String manipulatie in Python.
« Reactie #1 Gepost op: 2019/02/25, 19:14:00 »
Dat kun je met regex doen.

Offline henkoegema

  • Lid
    • PA2HO
  • Steunpunt: Nee
Re: String manipulatie in Python.
« Reactie #2 Gepost op: 2019/02/25, 20:14:55 »
Dat kun je met regex doen.

Bedankt voor je suggestie MKe.  (Ik zal dat eens bestuderen)

Heb ondertussen (na lang zoeken) een antwoord gevonden:
a = msg.payload.decode()
if len(a) == 25:
    index = a.find('C')
    a = a[:index] + '0' + a[index:]
Miscere utile dulci. (Ter leering ende vermaeck)
http://henk.oegema.com  (On RaspberryPi2)
Registered linux user 520520.  In gebruik: Ubuntu 18.04.  Radio Amateur callsign: PA2HO Interesses: Raspberry Pi & Arduino