質問編集履歴

1 言葉の誤りです。

mosquito

mosquito score 19

2016/05/28 13:58  投稿

[python][pygame]imageモジュール&osモジュールについて
今回質問させてもらうことはpythonのモジュール「pygame」についてです。
pygameを使いウィンドウを作成し、そこに「画像」を描画したいと思いこんなコードを書きました。
```python
import pygame
   ###略###
img = pygame.image.load('test.png').convert.alpha()
```
のように、loadの引数に相対的パスを指定すると
「python.error : Could't open 'test.png'」
というようにエラーがでてしまいました。
調べてみるとあるサイトには「絶対パスなら表示できる」という書き込みがあったので、
早速、
```python
import pygame
  ###略###
img = pygame.image.load('/home/○○○/デスクトップ/pygame(自作ディレクトリ)/test.png').convert_alpha()
```
というように変えてみたところ、エラーを起こさず描画することができました。
が、これだと自分のPC以外には対応しないので、次に「その画像の絶対PATH」を取得しようと思いました。
```python
import os
path = os.path.abspath('test.png')
print(path)#受け取ったPATHを確認してみる
```
すると、結果は
---
/home/○○○/test.png
---
となりました。PATHに「デスクトップ/pygame」が抜けていたのですが、試しに先ほどの
「pygame.image.load()」を行ってみたところ、同じエラーが出てしまいました。
私はここで行き詰まりました。
そこで、質問したいことは
---
1:そもそも絶対パスを取得しなくてもディスプレイ上に描画する方法があるのか。
2:絶対パスを取得しなければいけないのであれば、完全な取得方法があるのか。
3:描画する方法で、ほかにあるのかどうかについてです。(pygame以外でもいいのですが、、、)
---
です。1,2,3の全てでなくても構わないのでご教授お願いします。
また、説明不足な点もあるかと思いますので、その点についての質問も受け付けています。
また、説明不足な点もあるかと思いますので、その点についての質問でも構いません。
なにとぞお願いします!
待ってます!
  • Python 3.x

    17453 questions

    Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る