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

1614

    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. Vasemmistohallitus palauttaa hintasääntelyn, esim. bensalitra vain 1e.

      Tuleva vasemmistolaisista koostuva hallitus ottaa käyttöön vanhat hyvät keinot pitää hinnat kurissa. Tähän tarkoitukse
      Maailman menoa
      3
      3666
    2. SDP:n kansanedustaja Nazima Radmyar uhriutuu somessa saamistaan viesteistä.

      https://www.is.fi/politiikka/art-2000011854410.html Miksi Razmyar ei kestä kansan palautetta oikean kansanedustajan tavo
      Maailman menoa
      193
      3589
    3. Muistatteko kuinka Marinin hallituksen aikaan kansalaisilla oli varaa kuluttaa?

      Tavallisella perheelläkin oli rahaa käydä sääännöllisesti ravintoloissa syömässä, koska vahvat ammattiliitot olivat neuv
      Maailman menoa
      128
      3320
    4. Vasemmistolainen valehteli jälleen - Purra tai persut eivät luvanneet "euron bensaa"

      Väite "euron bensasta" on ensisijaisesti poliittisten vastustajien käyttämä puhdas vale. Persut kyllä kampanjoivat näky
      Maailman menoa
      71
      3291
    5. Korpelanvaara

      Korpelanvaaran alle tulee uusi hevosurheilu keskus monen miljoonan investoinnit
      Suomussalmi
      20
      2166
    6. Muistatteko kuinka Marinin hallituksen aikaan kansalaisilla oli varaa kuluttaa?

      Tavallisella perheelläkin oli rahaa käydä sääännöllisesti ravintoloissa syömässä, koska vahvat ammattiliitot olivat neuv
      Maailman menoa
      25
      1758
    7. Osaatko arvata

      Mitä ajattelin?
      Ikävä
      31
      1496
    8. Heippa nainen

      Tykkään susta niin että halkeen 😘 Kivaa iltaa. t-mies
      Ikävä
      32
      1451
    9. Meidän täytyy tavata

      Siis se on välttämättömyys.
      Ikävä
      86
      1345
    10. Haluaisin et

      Pussaisit läpi ja nuolisit
      Ikävä
      15
      1303
    Aihe