【まず1嫁】くだすれPython(超初心者用) その54

■ このスレッドは過去ログ倉庫に格納されています
2021/06/09(水) 21:05:44.61ID:zRBfpo4e
当スレに★Python以外のプログラミング言語での回答類を書くべからず★
派生言語はそれぞれ専スレがある(この板にあるとは限らない)ので、そっち池。
「Ruby」「Rails」「某言語では」「クソチョンw」をNGワード登録推奨。荒らしは、完全スルー放置が一番きらいです。

このスレッドは「お勉強」スレのほうには書き込めない超低レベル、
もしくは質問者自身何が何だか分からない質問を、勇気を持って書き込むスレッドです。
へび使いが優しくコメントを返しますので、お礼は Python の布教と初心者の救済をお願いします。

★エラーを解決したい場合★は、
  表示されたエラーの全文(勝手に省略やスクショうp等の横着クソ行為禁止)と、
  実行環境(Pythonのバージョン・OSとIDEの種類およびバージョン)をシッカリ書くこと。

Pythonの★ソースコードをそのまま5ちゃんに貼るとインデントが崩れてチヌ★
【【【複数の連続半角スペースはなにもなかったことにされる&タブは普通には入れられない】】】掲示板の仕様なので、
プログラム文は↓等の、いわゆるコードうp用サイトに貼ってこいください。
ttps://techiedelight.com/compiler/  Run Code機能あり。
ttp://ideone.com/      デフォ設定はC用のため、言語選択ボタン押下がピコ手間かも。
ttp://codepad.org/      ほぼ直感的に使える。Run codeボタンあり。
ttp://pastebin.com/     まずまずシンプル。
ttp://dpaste.com/      とてもシンプル。消えるまでの日数は十分長ーく指定のこと。

◇Python公式◇ http://www.python.org/
◇まとめwiki◇ ttp://python.rdy.jp/wiki.cgi

〇前スレ〇 【まず1嫁】くだすれPython(超初心者用) その53
https://mevius.5ch.net/test/read.cgi/tech/1615846784/

次スレたては >>985 あたりが挑戦する。
### END OF TEMPLATE ###
2デフォルトの名無しさん
垢版 |
2021/06/10(木) 09:09:42.55ID:fGM4j9Qy
>>> a=10
>>> x=[a]
>>> x
[10]
>>> a=20
>>> x
[10]
>>> a
20
>>>
なんでxが[20]にならないの?
そうなるにはどうすればいいの?
2021/06/10(木) 09:52:24.45ID:VzpKjmfX
数は書き換え不可の型なんで無理。
a自体を書き換え可能なオブジェクト、例えば配列に入れ込めば、似たようなことは出来なくもないが…
a = [1]
x = [a]
a = [2]
x
4デフォルトの名無しさん
垢版 |
2021/06/10(木) 11:03:02.88ID:smul9M+b
>>2
>>> a = [10]
>>> x = [a]
>>> x
[[10]]
>>> a[0] = 20
>>> a
[20]
>>> x
[[20]]
5デフォルトの名無しさん
垢版 |
2021/06/10(木) 11:05:06.12ID:smul9M+b
>>3
ちょっと何言ってるか判らない
2021/06/10(木) 11:38:53.73ID:VzpKjmfX
>>5
分かったから>>4で訂正したんでしょ?
2021/06/10(木) 19:34:32.89ID:lViDT5hn
リストに何でも入るから
思いつきは失敗する
2021/06/10(木) 21:26:49.02ID:8fi5Ujsh
Pycharmの自動整形には参ったよ
Javaで作ったやつコピペしたらいろいろとやってくれる
リテラルなんか一文字消えてたり空白入れてみたり
実際走らせて気が付くレベル
2021/06/12(土) 22:29:20.54ID:0anF7A9v
openで開いたファイルオブジェクトをforループで読み込む場合、forにオブジェクトをそのまま添えて一行ずつ読み込めるとのことですが
printするとオブジェクトがそのまま表示されてしまいます(_io.TextIOWrapper〜)
みんなのpythonのとおりにやっているつもりですが何がいけないのでしょうか?
python3.7.4を使用しています
2021/06/12(土) 22:40:15.04ID:GOzpxksd
open(a.txt) as f
でfのメソッド使わないと
fがラッパー
そのプログラム見てみたい
2021/06/12(土) 22:44:23.46ID:0anF7A9v
>>10
printの引数が間違っていた単純ミスでした
引数に読み込んだ一行の変数でなくオブジェクトの方を指定していました
ありがとうございました、またちょくちょく質問にくると思います
2021/06/12(土) 22:44:48.20ID:qlTYomdI
>>9
with open(‘path/to/file') as f:
____for line in f:
________print(line, end="")
2021/06/12(土) 23:31:01.35ID:0anF7A9v
>>12
ありがとうございます、無事解決しました
14デフォルトの名無しさん
垢版 |
2021/06/13(日) 02:45:35.12ID:6oAiR6bp
コマンドライン上(bash)で任意のpythonファイルを実行した時に引数に
色を渡してその色で出力したいのですがどう書けばいいでしょうか?

defの引数に(出力したい色, 出力したい文字列)を渡して
色々やってるのですが、詰んでいてどなたか教えてください。。
スッピン書きでは動作確認取れています。(print(pycolor.RED + word + pycolor.END))

class pycolor:
BLACK = '\033[30m'
RED = '\033[31m'
GREEN = '\033[32m'
YELLOW = '\033[33m'
BLUE = '\033[34m'
PURPLE = '\033[35m'
CYAN = '\033[36m'
WHITE = '\033[37m'
RETURN = '\033[07m' #反転
ACCENT = '\033[01m' #強調
FLASH = '\033[05m' #点滅
RED_FLASH = '\033[05;41m' #赤背景+点滅
END = '\033[0m'
2021/06/13(日) 06:19:52.00ID:d/vYrCOI
VSCode や誰かのモジュールなどに、そういう拡張機能が無いの?

Python の質問と言うよりも、端末の設定の話
16デフォルトの名無しさん
垢版 |
2021/06/13(日) 11:13:39.05ID:6oAiR6bp
コマンドライン上プロンプトや補完機能の色付けとかはbashrcで全て管理してるので問題ない(色付け)です。


Pythonで便利な機能なスクリプト書いたので、そこから測れるか文字列を色付けする方法を知らなくて困ってました。
17デフォルトの名無しさん
垢版 |
2021/06/13(日) 13:08:19.84ID:6oAiR6bp
>>16です
補足でエディター上のシンタックスハイライトの設定ではなく
コマンドライン上の標準出力に色つけしたいという意味です。
18デフォルトの名無しさん
垢版 |
2021/06/13(日) 13:15:17.58ID:EhTxteT2
黒魔術であるところのgetattrとか使えばラクに出来るんじゃね

pycolor."BLACK"
とかで呼び出したいんだろ

でも普通に考えれば連想配列を使う
2021/06/13(日) 13:31:22.64ID:1nzveETz
何がしたいのかは分かったけど
今度は何でできないのか分からない
20デフォルトの名無しさん
垢版 |
2021/06/13(日) 14:22:53.04ID:6oAiR6bp
class hogehoge:
  #
  #色の変数リスト省力します
  #

  def printWithColor(self, color, word):
    print(color + word + END)

で出力したいのですが、仮にcolorに赤となる【\033[31m】を展開できないんです。。
selfを消すと引数エラーが出てしまい詰みます。。
2021/06/13(日) 14:27:14.41ID:tn2YN+mq
windows10のコンソールはエスケープシーケンス効かないけどそれ?

とエスパーしてみる
2215
垢版 |
2021/06/13(日) 14:29:53.03ID:d/vYrCOI
漏れなら、VSCode の拡張機能・テーマなどで探すけど

Terminal Color and Style Highlighting for VS Code
https://github.com/TobiasFaller/vscode-vt100-syntax-highlight

「vscode terminal colors extension」「vscode terminal color theme」などで検索してみれば?
23デフォルトの名無しさん
垢版 |
2021/06/13(日) 14:40:04.09ID:EhTxteT2
dic = {
"BLACK": '\033[30m',
"RED": '\033[31m',
"GREEN": '\033[32m'
}

連想配列にすればラクじゃん
2021/06/13(日) 18:45:52.61ID:1nzveETz
COLOR_DICT = {
"BLACK": '\033[30m',
"RED": '\033[31m',
"GREEN": '\033[32m',
}
COLOR_END = '\033[0m'

def printWithColor(color, word):
  print(COLOR_DICT[color] + word + COLOR_END)

そして今度は何か縛り条件が出てくんだろ?
知ってる
25デフォルトの名無しさん
垢版 |
2021/06/13(日) 18:51:41.04ID:6oAiR6bp
できました!!
ご協力いただいた方ありがとうございます!!

class pycolor:
LIST = {
"BLACK": '\033[30m',
"RED": '\033[31m',
"GREEN": '\033[32m',
"YELLOW": '\033[33m',
"BLUE": '\033[34m',
"PURPLE": '\033[35m',
"CYAN": '\033[36m',
"WHITE": '\033[37m',
"RETURN": '\033[07m', #反転
"ACCENT": '\033[01m',#強調
"FLASH": '\033[05m', #点滅
"RED_FLASH": '\033[05;41m', #赤背景+点滅,
"END": '\033[0m'
}

def printColor(self, color, word):
print(self.LIST[color] + word + self.LIST["END"])
26デフォルトの名無しさん
垢版 |
2021/06/13(日) 18:52:25.86ID:QtPR3o33
単純に出力するんじゃなくて、bashに解釈させないとダメなんじゃないの?
echo -e "${python hoge.py}"
こういうイメージ
2021/06/13(日) 18:58:28.21ID:fUoO1UdQ
import rich
28デフォルトの名無しさん
垢版 |
2021/06/13(日) 21:09:48.44ID:EhTxteT2
こういうことを出来るのは知ってた
Windowsでやったことがある

C言語でターミナルで表示される文字をカラー表示させる : Serendip – Webデザイン・プログラミング
https://www.serendip.ws/archives/4635

スネークゲーム
http://vivi.dyndns.org/tech/games/snake.html
29デフォルトの名無しさん
垢版 |
2021/06/13(日) 21:47:36.32ID:6oAiR6bp
>>27
このモジュールいいですね。

普段からshellscriptは書くのですが、pythonは触ったことがなく四苦八苦しておりました。。。
辞書検索 + 登録アプリでも作ろうかと思ってます。
無事出力出来ました。
みなさんありがとうございます!

https://imgur.com/lYUlTXs
2021/06/13(日) 21:59:35.61ID:CH3wHZx1
結局何につまづいていたのか
知りたいものだ
2021/06/14(月) 01:45:14.00ID:XgAL3CwN
未だに分からんよな
32デフォルトの名無しさん
垢版 |
2021/06/14(月) 10:37:51.20ID:TNhB31Ko
色の問題じゃなくてpythonの使い方を知らなかっただけだ
2021/06/14(月) 18:34:18.68ID:4CwMrts3
pythonでAndroidアプリを作ろうとしたら、どんな環境がありますか?
VSCodeで作れれば一番いいのですが、可能ですか?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況