Skip to content

Instantly share code, notes, and snippets.

View SpaceVoyager's full-sized avatar

Yuhang Wang SpaceVoyager

View GitHub Profile
@SpaceVoyager
SpaceVoyager / eight_puzzle_v0.5.py
Created November 26, 2015 23:38
eight_puzzle_v0.5.py
import ui
import speech
border_color = (1.00, 0.50, 0.00)
def isAdjacent(row1, col1, row2, col2):
if abs(row1-row2) + abs(col1-col2) == 1:
return True
else:
return False
@SpaceVoyager
SpaceVoyager / pythonista_compile_howto.md
Last active November 11, 2025 18:39
How to make a standalone iOS app with Pythonista

After you made some cool games or apps with Pythonista, you may want to make it run as a standaone app on iPad/iPhone and possibly share it on the AppStore. This how-to tells you how to do it.

What you need:

  1. Pythonista code you wrote
  2. A Mac with Xcode 7.1 installed
  3. iPhone/iPad running iOS 9

Steps:

  1. Download PythonistaProjectTemplate.zip. The original PythonistaProjectTemplate described at http://olemoritz.net/pythonista-15-whats-new-and-whats-missing.html does not work with Xcode 7. I updated it to work with Xcode 7 and added a more interesting example than the plain old Hello World thing.
  2. Unzip the file and open the project in Xcode 7.1. In project settings, change the Bundle Identifier from com.yuhangwang.pythonistaproject to something else.
@SpaceVoyager
SpaceVoyager / puzzlescores_web_service_usage.py
Last active December 12, 2015 22:02
functions for accessing puzzle scores web service
import requests
import json
import random
import urllib
END_POINT = 'http://192.168.1.8:5000/puzzlescores'
def add_player(player_name):
headers = {'Content-Type': 'application/json'}
data = json.dumps({"name": player_name})
@SpaceVoyager
SpaceVoyager / eight_puzzle_v0.6.py
Created January 9, 2016 19:17
eight_puzzle_v0.6.py
import ui
import speech
import random, time
import requests
import json
import random
import urllib
END_POINT = 'http://192.168.1.8:5000/puzzlescores'
@SpaceVoyager
SpaceVoyager / rabbit_puzzle_bfs_solver.py
Created January 10, 2016 20:58
Using Breadth-First Search to solve the rabbit crossing river puzzle
'''
Using Breadth-First Search to solve the rabbit crossing river puzzle
'''
from collections import deque
def goal_test(stones, state):
if state[0] >= len(stones) -1:
return True
return False
@SpaceVoyager
SpaceVoyager / three_puzzle_bfs_solver.py.py
Created January 17, 2016 14:09
three_puzzle_bfs_solver.py.py
'''
Using Breadth-First Search to solve the three puzzle
Author: Yuhang Wang
'''
from collections import deque
def isAdjacent(row1, col1, row2, col2):
if abs(row1-row2) + abs(col1-col2) == 1:
return True
@SpaceVoyager
SpaceVoyager / eight_puzzle_v0.6.py
Created January 30, 2016 20:38
eight_puzzle_v0.6.py
import ui
import speech
import random, time
import requests
import json
import random
import urllib
from collections import deque
END_POINT = 'http://192.168.1.8:5000/puzzlescores'
@SpaceVoyager
SpaceVoyager / eightqueens_0.1.py
Created February 15, 2016 15:05
eightqueens_0.1.py
# The eight queens puzzle game
import ui
v = ui.View(background_color=(0.40, 0.80, 1.00))
board = ui.View()
v.add_subview(board)
v.present('full_screen', hide_title_bar=False , orientations=['landscape'])
#steps_label = ui.Label()
#steps_label.frame = (30, 30, 250, 70)
#steps_label.background_color = (1.00, 0.00, 0.50)
@SpaceVoyager
SpaceVoyager / eightqueens_0.1.py
Created March 19, 2016 18:20
eightqueens_0.1.py
# The eight queens puzzle game
import ui, sound, speech
nqueens = 8
v = ui.View(background_color=(0.40, 0.80, 1.00))
board = ui.View()
v.add_subview(board)
v.present('full_screen', hide_title_bar=False , orientations=['landscape'])
#steps_label = ui.Label()
#steps_label.frame = (30, 30, 250, 70)
@SpaceVoyager
SpaceVoyager / 8-puzzle-solver.py.py
Created March 26, 2016 18:20
8-puzzle-solver.py.py
'''
Using Breadth-First Search to solve the 8-puzzle
Author: Yuhang Wang
'''
from collections import deque
def isAdjacent(row1, col1, row2, col2):
if abs(row1-row2) + abs(col1-col2) == 1:
return True