Python 3 ja str.center()

Anonyymi

print ( "[", str.center( 'aa', 10, '*' ), "]" )

Tulostaa [ ****aa**** ]

Koinka tuo saadaan niin, ettei reunoille jää välilyöntiä, siis näin [*****aa*****].

25

1585

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      Pilkun syytä kaikki. Korvaa koodissasi pilkku plus -merkillä niin problem solved.

      • Anonyymi

        Näinhän se oli, pilkkuhan sen teki, nyt toimii oikein:

        print ( "[" str.center( 'aa', 10, '*' ) "]" )
        Nyt tulostaa niin kuin pitääkin: [****aa****]


    • Anonyymi

      Pythonissakin lienee trim()-funktio, joka poistaa tyhjät merkit merkkijonon päistä?

      • Anonyymi

        On kyllä tavallaan:
        strip()
        lstrip()
        rstrip()

        Mutta niistä ei tässä tapauksessa ole apua. Ehkä lähin voisi olla tämä:
        a = ( "[ " str.center( 'aa', 10, '*' ) " ]" )
        print( a.replace(" ", "") )
        tosin tuokaan ei korjaa kysyttyä tilannetta, jossa pilkun käyttö tuo nuo välilyönnit.


      • Anonyymi
        Anonyymi kirjoitti:

        On kyllä tavallaan:
        strip()
        lstrip()
        rstrip()

        Mutta niistä ei tässä tapauksessa ole apua. Ehkä lähin voisi olla tämä:
        a = ( "[ " str.center( 'aa', 10, '*' ) " ]" )
        print( a.replace(" ", "") )
        tosin tuokaan ei korjaa kysyttyä tilannetta, jossa pilkun käyttö tuo nuo välilyönnit.

        Joo, jos ei halua välilyöntejä merkkijonoja yhdistellessä, niin pilkkujen tilalle silloin plussat.


    • Anonyymi

      Ei tarvitse välttämättä erillistä funktiota.

      print('[' 5*'*' 'aa' 5*'*' ']')

    • Anonyymi

      Python on kyllä hyvä merkkijonojen kanssa kikkailuun. Esimerkiksi merkkijonon kääntäminen onnistuu ilman erillistä funktiota.

      a = 'abc'
      a[::-1] -> 'cba'

    • Anonyymi

      Kuten taas tuolta alareunasta voi lukea:

      Ketjusta on poistettu 2 sääntöjenvastaista viestiä.

      Vaikka mitä korjauksia tekisivät tähän sivustoon, niin käyttäjän syyllistämistä eivät lopeta. Ei ole poistetuissa mitään "sääntöjenvastaista", moderointi ei vain toimi, mutta maailmalle pitää antaa kuva että käyttäjät ovat rikkoneet sääntöjä. Näistä jää aina pahamaku suuhun, kun käyttäjän on otettava vastuu, siitä että ylläpito ei osaa tehtäviään.

      • Anonyymi

        Mitähän lie tuossa kolmannessa poistetussa lukenut, tekikö käyttäjä jonkin rikoksen, näkikö kukaan.


    • Anonyymi

      Ymmärtääkseni str.center() komennossa str on se ympäröitävä stringi. Toimii jostain syystä esittämälläsi tavallakin, mutten löydä sitä mistään tuon komennon määrittelyistä. Onko joku historiallinen jäänne jostain? Vaiko joku uutuus? Onko tarpeen käyttää dokumentoimattomalla tavalla?

      s = 'aa'
      print('[' s.center(10,'*') ']')

      • Anonyymi

        Jospa sillä str-etuliitteellä vain halutaan kertoa minkä kirjaston funktiota käytetään. Tässä yksi esimerkki sen käytöstä: https://s3.gifyu.com/images/Valinta_102.png Kirjastohan sisältää 42 tavallisinta ja käytetyintä funktiota.

        Esimerkki tehty ja testattu:
        Linux Mint 19 Xfce 64-bit ympäristössä.
        Python 3.6.8


      • Anonyymi

        Näkyy kuuluvan "deprecated"-funktioihin.

        https://docs.python.org/2/library/string.html

        Sen sijaan pitäisi käyttää '^'-alignmentia format-metodille annettavan merkkijonon kanssa, esim. tässä tapauksessa:

        '{:*^10}'.format('aa')


    • Anonyymi

      Kun nyt perl -palstalla on python-osaajia, niin käytetään tilaisuutta hyväksi:

      #!/usr/bin/env python3
      import datetime, time
      loppu=4.274
      floppu=datetime.timedelta(seconds=loppu)
      print(loppu,"->",floppu)
      loppu=20.0
      floppu=datetime.timedelta(seconds=loppu)
      print(loppu,"->",floppu)

      4.274 -> 0:00:04.274000
      20.0 -> 0:00:20

      miten saisin jälkimmäisen olevan:
      20.0 -> 0:00:20.000000

      • Anonyymi

        print("%0.6f" % 20.00)
        20.000000

        Tuossa 6f kertoo tulostettavien desimaalien määrä. Katso lisää print-komennon tulostustavoista. Kaikki on aina tarkkaan määriteltävissä.


      • Anonyymi
        Anonyymi kirjoitti:

        print("%0.6f" % 20.00)
        20.000000

        Tuossa 6f kertoo tulostettavien desimaalien määrä. Katso lisää print-komennon tulostustavoista. Kaikki on aina tarkkaan määriteltävissä.

        ei tuo toimi kuin siihen saakka kuin sekunnit <60


    • Anonyymi

      Ei ole valmista formaattia, on tehtävä oma funktio jolla homma hoituu.

    • Anonyymi

      S24:sen parasta antia.

    • Anonyymi

      Tässä on ammattimiehet asialla. Näitä tarvitaan lisää.

    • Anonyymi

      Lisää Pythonia, paljon lisää.

    • Anonyymi

      Näin meillä, mites teillä.

    • Anonyymi

      Voi myös deletellä paikata Wordin, jos rivi ei vaihdu. Ite lisäsin pakan lisää väriä ,nii mageempi maisema

      • Anonyymi

        Etkö voisi kirjoittaa salaamatta tekstiä.


    • Anonyymi

      S24 tekee pilkkaa käyttäjistään, syyttämällä käyttäjiä sääntöjenvastaisista viesteistä. Viittaan tämänkin ketjun alareunassa olevaan huomautukseen.

      "Ketjusta on poistettu 3 sääntöjenvastaista viestiä."

    • Anonyymi

      Minkähän vuoksi tätä ketjua ei ole poistettu?
      Tässähän on selvästi asiaakin mukana.

      • Anonyymi

        TOTUUS ON TÄMÄ
        Ajattelepa näin; jos nämä asiaviestit poistettaisiin kokonaan, ja samaan aikaan kansa narisee keskustelujen huonosta tasosta joka ketjussa. Asiasta kiinnostuisi varmasti myös sellaiset tahot joiden sana painaa rivikansalaista enemmän, joten kyllä näillä harvoilla asiaa sisältävillä ketjuilla on vissi tarkoitus olemassa.


    Ketjusta on poistettu 4 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Suomen markka otettiin käyttöön vuonna 1860

      Suomi käytti vuoteen 1840 asti rahayksikkönään rinnakkain Ruotsin riikintaalareita ja Venäjän ruplaa. Tämän jälkeen oli
      Maailman menoa
      39
      9321
    2. "Mä elän vieläkin"

      Ikurin turbiini vetäisi taannoin lainabiisin Topin (RIP också) ja kumppaneiden kanssa. Toivottavasti on yläkerrassa kunn
      Tampere
      33
      3883
    3. Yksityinen sektori aiheuttanut Suomen taantuman

      Investointien sijasta nostaneet voitot osinkoina omistajille. Ehdotan korjausliikkeenä yksityisen sektorin sosialisoimi
      Maailman menoa
      88
      2456
    4. Pate Mustajärvi on kuollut

      Ihan pari tuntia sitten. Että sellaista. https://www.is.fi/viihde/art-2000011715177.html
      Maailman menoa
      126
      2436
    5. Kaivatullesi viesti ensi vuoteen?

      Kerro meneekö naiselle vai miehelle ja vähintään yksi tunniste, esim. kirjain.
      Ikävä
      39
      2334
    6. Kylläpä asiat onkin nyt hyvin verrattuna Sannan aikaan

      Sannan aikana aähkön alv oli 10%, nyt 25,5%. Ajatelkaa nytkin pörssisähkö on ilmaista, keskellä talvea! Bensan hinta on
      Maailman menoa
      25
      1945
    7. Miten ikinä kelpaisin sulle

      Sinä saat niiltä muilta naisilta paljon enemmän, mitä minulta... Tai mihin minä olisin valmis. Enkä edes olisi niin tait
      Ikävä
      15
      1610
    8. Edes vitamiinit eivät taanneet loputonta elämää

      Nimittäin niistä rahaa itselleen taikonut tohtori siirtyi tuonpuoleiseen.
      Maailman menoa
      32
      1431
    9. Kuinka kauan vielä

      jaksetaan vastustaa toisiamme?
      Ikävä
      71
      1267
    10. Esko ja Martina viettävät joulua

      Entisen avioparin joulunvietto on ylittänyt IS uutiskynnyksen
      Kotimaiset julkkisjuorut
      173
      1062
    Aihe