Skip to main content

A Rubik's cube model and solver

Project description

cubeofrubik

PyPi Version Downloads/Month Package Tests Documentation Status

A Rubik's cube model and solver.

Installation

pip install cubeofrubik

Documentation

Find complete documentation on: cubeofrubik.rtfd.io.

Usage:

>>> from cubeofrubik import RubiksCube

>>> cube = RubiksCube()

>>> cube.draw()
            
            
            
🟧 🟧 🟧 🟩 🟩 🟩 🟥 🟥 🟥 🟦 🟦 🟦
🟧 🟧 🟧 🟩 🟩 🟩 🟥 🟥 🟥 🟦 🟦 🟦
🟧 🟧 🟧 🟩 🟩 🟩 🟥 🟥 🟥 🟦 🟦 🟦
   🟨 🟨 🟨       
   🟨 🟨 🟨       
   🟨 🟨 🟨       
>>> cube.scramble()
'B′DU′F′DB2FRDBF2URBDB2U′D′L2D'

>>> cube.draw()
   🟧 🟦 🟦       
     🟩       
   🟦 🟨        
🟩 🟥 🟨 🟧 🟥 🟩 🟥 🟥  🟥 🟥 🟨
🟩 🟧  🟦 🟩 🟨 🟧 🟥 🟧 🟦 🟦 🟧
🟧 🟩 🟨 🟩 🟦 🟨 🟥 🟧  🟧 🟩 🟩
   🟥 🟨 🟦       
   🟨 🟨        
     🟦       

>>> cube.solve()
'RB′UR′UB′R2U2R2L2B′U′L2D′L2F2DL2UD′L2'

>>> cube.draw()
            
            
            
🟧 🟧 🟧 🟩 🟩 🟩 🟥 🟥 🟥 🟦 🟦 🟦
🟧 🟧 🟧 🟩 🟩 🟩 🟥 🟥 🟥 🟦 🟦 🟦
🟧 🟧 🟧 🟩 🟩 🟩 🟥 🟥 🟥 🟦 🟦 🟦
   🟨 🟨 🟨       
   🟨 🟨 🟨       
   🟨 🟨 🟨       

>>> cube.move("RUR′U′")
>>> cube.draw()
     🟧       
     🟩       
     🟩       
🟦 🟧 🟧 🟩 🟩 🟨 🟥 🟥  🟦 🟥 🟥
🟧 🟧 🟧 🟩 🟩  🟦 🟥 🟥 🟦 🟦 🟦
🟧 🟧 🟧 🟩 🟩 🟩  🟥 🟥 🟦 🟦 🟦
   🟨 🟨 🟥       
   🟨 🟨 🟨       
   🟨 🟨 🟨       

>>> cube.is_solvable()
True

>>> cube.is_solved()
False

>>> cube.get_color('F')
'G'

>>> cube.find_position('G', 'Y', 'R')
'UFR'

>>> cube.get_size()
3

>>> cube.set_color('01', 'R')
>>> cube.draw()
     🟧       
     🟩       
     🟩       
🟦 🟧 🟧 🟥 🟩 🟨 🟥 🟥  🟦 🟥 🟥
🟧 🟧 🟧 🟩 🟩  🟦 🟥 🟥 🟦 🟦 🟦
🟧 🟧 🟧 🟩 🟩 🟩  🟥 🟥 🟦 🟦 🟦
   🟨 🟨 🟥       
   🟨 🟨 🟨       
   🟨 🟨 🟨       

>>> cube.is_solvable()
False

License

This cubeofrubik is available under the MIT license. Read the LICENSE file for more info.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cubeofrubik-1.0.0.tar.gz (14.3 kB view details)

Uploaded Source

Built Distribution

cubeofrubik-1.0.0-py3-none-any.whl (14.6 kB view details)

Uploaded Python 3

File details

Details for the file cubeofrubik-1.0.0.tar.gz.

File metadata

  • Download URL: cubeofrubik-1.0.0.tar.gz
  • Upload date:
  • Size: 14.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for cubeofrubik-1.0.0.tar.gz
Algorithm Hash digest
SHA256 44c603f5ae75c02f4d2aaeed9562bd3f29a979da024fb6429c9b807ad077484c
MD5 102a7aecb669c068c846917337b8fddf
BLAKE2b-256 6a2e8dabd7a70d797cc35826eecb34e643915726cbb76160834c531b3790709d

See more details on using hashes here.

File details

Details for the file cubeofrubik-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: cubeofrubik-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 14.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for cubeofrubik-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 53cbb2b896b1cb4bb4c167618829f946327753ed89e86d4116ede5243b2689c0
MD5 3ee7c211a85eb6dce89d269121e2a5fd
BLAKE2b-256 a0c2af9b51941a047d751f54183d97bb4148275fa7c0e1c6a0190554937fc584

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page