| | |
fileIO & pygame help
Please support our Python advertiser: Programming Forums - DaniWeb Sister Site
Thread Solved |
•
•
Join Date: Sep 2009
Posts: 11
Reputation:
Solved Threads: 0
I am trying to make pygame draw a shape from a list of shapes imported with fileIO but i get a pygame import error please help
this is my my "shapes.txt"
circle
rect
line
line
rect
circle
Python Syntax (Toggle Plain Text)
import random import pygame w = 640 h = 480 x = open("shapes.txt") z = x.readlines()[n] n = random.randrange(6) screen = pygame.display.set_mode((w, h)) pygame.draw.z(screen, (random.randrange(255), random.randrange(255), random.randrange(255)), (random.randrange(640), random.randrange(480)), 50 ) for event in pygame.event.get(): if event.type == QUIT: exit()
circle
rect
line
line
rect
circle
0
#2 Nov 8th, 2009
say if n was circle, this is what python interprets:
now thats not code; its a string. you could add if statements like so:
python Syntax (Toggle Plain Text)
pygame.draw."circle"(screen, (random.randrange(255), random.randrange(255), random.randrange(255)), (random.randrange(640), random.randrange(480)), 50 )
now thats not code; its a string. you could add if statements like so:
python Syntax (Toggle Plain Text)
if z == 'circle': pygame.draw.circle(arguements_go_here) elif z == 'line': # code for drawing line here
•
•
Join Date: Sep 2009
Posts: 11
Reputation:
Solved Threads: 0
0
#3 Nov 8th, 2009
Python Syntax (Toggle Plain Text)
import random import pygame w = 640 h = 480 n = random.randrange(6) x = open("shapes.txt") z = x.readlines()[n] screen = pygame.display.set_mode((w, h)) if z == "circle": pygame.draw.circle(screen, (random.randrange(255), random.randrange(255), random.randrange(255)), (random.randrange(640), random.randrange(480)), 50 ) elif z == "line": pygame.draw.line(screen, (random.randrange(255), random.randrange(255), random.randrange(255)), (random.randrange(640), random.randrange(480)), 50 ) elif z == "rect": pygame.draw.rect(screen, (random.randrange(255), random.randrange(255), random.randrange(255)), (random.randrange(640), random.randrange(480)), 50 ) for event in pygame.event.get(): if event.type == QUIT: exit()
my new code but i get this error now
Message File Name Line Position
Traceback
<module> C:\Users\Curtie\Desktop\HomeWork\CSET\codes\assignment_11\assignment_11.py 2
<module> L:\PortableApps\PortablePython_1.1_py3.0.1\App\lib\site-packages\pygame\__init__.py 95
ImportError: DLL load failed: The specified module could not be found.
0
#4 Nov 9th, 2009
try
if that doesn't work, make sure you have the pygame that matches up with your version of python
python Syntax (Toggle Plain Text)
import pygame from pygame.locals import *
if that doesn't work, make sure you have the pygame that matches up with your version of python
•
•
Join Date: Nov 2009
Posts: 79
Reputation:
Solved Threads: 22
0
#6 Nov 9th, 2009
Quick hint: Instead of the condition cascade consider a more pythonically succinct approach:
Python Syntax (Toggle Plain Text)
if z == "circle": ... elif ...
Python Syntax (Toggle Plain Text)
assert n in ('circle', 'line', 'rect') draw = getattr(pygame.draw, n) draw(screen, (random.randrange(255), random.randrange(255), random.randrange(255)), (random.randrange(640), random.randrange(480)), 50 )
Last edited by pythopian; Nov 9th, 2009 at 11:43 am.
•
•
Join Date: Sep 2009
Posts: 11
Reputation:
Solved Threads: 0
0
#7 Nov 9th, 2009
ive reinstalled python and pygame ive added the
with no results....i am using 3.01. it works in 2.61 but i am required to use 3.01 does anyone else no what might be causing this?
also its in just the import pygame function as i have tested just running that and get the same error code
Python Syntax (Toggle Plain Text)
import pygame from pygame.locals import *
also its in just the import pygame function as i have tested just running that and get the same error code
Last edited by CurtisEClark; Nov 9th, 2009 at 3:39 pm.
•
•
Join Date: Sep 2009
Posts: 11
Reputation:
Solved Threads: 0
0
#8 Nov 10th, 2009
Python Syntax (Toggle Plain Text)
import random import pygame w = 640 h = 480 n = random.randrange(6) x = open("shapes.txt") z = x.readlines()[n] screen = pygame.display.set_mode((w, h)) if z == "circle": pygame.draw.circle(screen, (random.randrange(255), random.randrange(255), random.randrange(255)), (random.randrange(640), random.randrange(480)), 100 ) elif z == "line": pygame.draw.line(screen, (random.randrange(255), random.randrange(255), random.randrange(255)), (random.randrange(640), random.randrange(480)), 100 ) elif z == "rect": pygame.draw.rect(screen, (random.randrange(255), random.randrange(255), random.randrange(255)), (random.randrange(640), random.randrange(480)), 100 )
•
•
Join Date: Sep 2009
Posts: 11
Reputation:
Solved Threads: 0
0
#9 Nov 10th, 2009
Python Syntax (Toggle Plain Text)
import random import pygame w = 640 h = 480 n = random.randrange(6) x = open("shapes.txt") z = x.readlines()[n] screen = pygame.display.set_mode((w, h)) if "circle" in z: pygame.draw.circle(screen, (random.randrange(255), random.randrange(255), random.randrange(255)), (random.randrange(640), random.randrange(480)), 50 ) elif "line" in z: pygame.draw.line(screen, (random.randrange(255), random.randrange(255), random.randrange(255)), (random.randrange(640), random.randrange(480)), 50 ) elif "rect" in z: pygame.draw.rect(screen, (random.randrange(255), random.randrange(255), random.randrange(255)), (random.randrange(640), random.randrange(480)), 50 )
I've fixed the main problem but now i get
Traceback (most recent call last):
File "<string>", line 244, in run_nodebug
File "C:\Users\Curtie\Desktop\HomeWork\CSET\codes\assignment_11\assignment_112.py", line 17, in <module>
pygame.draw.line(screen, (random.randrange(255), random.randrange(255), random.randrange(255)), (random.randrange(640), random.randrange(480)), 50 )
TypeError: Invalid end position argument
>>>
Traceback (most recent call last):
File "<string>", line 244, in run_nodebug
File "C:\Users\Curtie\Desktop\HomeWork\CSET\codes\assignment_11\assignment_112.py", line 19, in <module>
pygame.draw.rect(screen, (random.randrange(255), random.randrange(255), random.randrange(255)), (random.randrange(640), random.randrange(480)), 50 )
TypeError: Rect argument is invalid
0
#10 Nov 10th, 2009
•
•
•
•
This code works in 2.6.1 but when there are no shapes just a black screen, is there a way to fix this?Python Syntax (Toggle Plain Text)
import random import pygame w = 640 h = 480 n = random.randrange(6) x = open("shapes.txt") z = x.readlines()[n] screen = pygame.display.set_mode((w, h)) if z == "circle": pygame.draw.circle(screen, (random.randrange(255), random.randrange(255), random.randrange(255)), (random.randrange(640), random.randrange(480)), 100 ) elif z == "line": pygame.draw.line(screen, (random.randrange(255), random.randrange(255), random.randrange(255)), (random.randrange(640), random.randrange(480)), 100 ) elif z == "rect": pygame.draw.rect(screen, (random.randrange(255), random.randrange(255), random.randrange(255)), (random.randrange(640), random.randrange(480)), 100 )
Drawing a line, circle or rectangle takes different arguments. They all have screen and color in common, but then they diverge. A line takes 2 coordinate points for start and end of line. A circle takes one coordinate point for the center and a radius value. The rectangle takes diagonal corner coordinates.
You also need to call
pygame.display.flip()
for anything to show
... and last not least an event loop at the end.
May 'the Google' be with you!
![]() |
Similar Threads
- Code Snippet: Pygame Curve Library for Anti-Aliased Circles and Curved Surface Corners. (Python)
- Professional Shared & Reseller Web Hosting (Web Hosting Deals)
- Code Snippet: Bouncing Image (Python & Pygame) (Python)
- pygame full screen help (Python)
- Pygame crashing (Python)
Other Threads in the Python Forum
- Previous Thread: python MySQL problem
- Next Thread: how do I connect to MySQL server which is firewall protected?
| Thread Tools | Search this Thread |
Tag cloud for Python
abrupt ansi anti approximation assignment avogadro backend basic beginner binary bluetooth calculator character code customdialog decimals dictionaries dictionary drive dynamic examples excel exe file float format ftp function gnu graphics gui heads homework http ideas import input java launcher leftmouse line linux list lists loop module mouse number numbers output parsing path pointer port prime program programming progressbar projects py2exe pygame pyqt python random recursion recursive refresh schedule scrolledtext sqlite ssh statistics stdout string strings sudokusolver sum table terminal text thread threading time tkinter tlapse tricks tuple tutorial twoup ubuntu unicode update urllib urllib2 variable wikipedia windows write wxpython xlib






