[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 10/13 03:24 / Filesize : 252 KB / Number-of Response : 1018
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Pythonのお勉強 Part74



1 名前:デフォルトの名無しさん [2024/09/21(土) 10:14:02.15 ID:ZHy4g+PL0.net]
!extend:default:vvvvv:1000:1024
!extend:default:vvvvv:1000:1024
↑スレ立てる毎に減るので、減ってたら3つに補充すること。

※前スレ
Pythonのお勉強 Part73
https://mevius.5ch.net/test/read.cgi/tech/1717631290/
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured

82 名前:デフォルトの名無しさん [2024/10/06(日) 17:09:34.73 ID:UFSeVUgGH.net]
浮動小数点と丸めの話は定番の話でググって出てくる説明で分からんかったらここでも多分無理だぞ

83 名前:デフォルトの名無しさん mailto:sage [2024/10/06(日) 19:11:14.13 ID:6RIEhc9V0.net]
print(100 * 1.08 == int(100 * 1.08)) # true
print(100 * 1.1 == int(100 * 1.1)) # false

1.08だったら正確に108.0だったのにな

84 名前:デフォルトの名無しさん mailto:sage [2024/10/06(日) 19:18:39.74 ID:6RIEhc9V0.net]
a = 100*1.08
b = int(a)
print(a is b) # False
print(a == b) # True
print(hash(a) == hash(b)) # True

d = {}
d[a] = 1
print(d[b]) # 1

1.1だとエラー

85 名前:デフォルトの名無しさん [2024/10/06(日) 21:53:44.52 ID:D+tHfaDh0.net]
結局二進数表記で無限桁になる場合は誤差が出るってことにつきる

86 名前:デフォルトの名無しさん mailto:sage [2024/10/06(日) 22:18:43.84 ID:6RIEhc9V0.net]
from fractions import Fraction
rate = Fraction(110, 100)
print(100*rate == int(100*rate)) # True

87 名前:デフォルトの名無しさん mailto:sage [2024/10/06(日) 23:29:37.04 ID:AAf4wbtz0.net]
ハイパーモダンpythonって何だそれ?って立ち読みしたらただのツールチェインの解説だった
原書見るとhypermodern python toolingだった
日本のオライリーは完全に終わった

88 名前:デフォルトの名無しさん [2024/10/07(月) 22:15:19.09 ID:QvvyKpnV0.net]
質問です。こちらの職業は勇者、戦士、空手家
勇者から柔道家までの5人の攻撃回数が異なります。
まず勇者は2回攻撃、戦士は3回攻撃、空手は3回攻撃
(勇者の1回分の攻撃は100〜200、20%の確率でクリティカルヒットの攻撃になることがある。
(戦士の攻撃は200〜300、20%の確率で攻撃がクリティカルヒット1回になることがある。
(空手家)空手家の攻撃は350〜500、ただし20%の確率で攻撃がクリティカルヒットとなるときがある。勇者は5%の確率でロトの剣が手に入る。
クリティカルヒットは攻撃力X2です。さてプログラムをやっていくか。

まずギルガメッシュっていう名前のenemy
ラスボスの名前はenemyとする。ボスのHPは5万。
ボスは基本的に何もしません、できません。これやるとさすがに面倒なのでw
基本的にボスは攻撃しません。(面倒だからw)
一方的になかまあつめてボコすw
さて、次の問題はキャラクターが何人いるか。
イフ文1でまず攻撃は勇者〜勇者=yu 戦士=sen 空手家=karate
*ロトの剣で攻撃したら攻撃力が1.5倍あがります。*
**癒しの穂。食べたら防御力と賢さがあがります**
ロトの剣の出現条件は3並びで一つ食べることができます。
例えば111攻撃とか222攻撃とか333攻撃とか〜999まで。
次の発言からコードを書いていく。

89 名前:デフォルトの名無しさん mailto:sage [2024/10/07(月) 22:52:41.61 ID:stL6GaPr0.net]
発達障害風の生成AI?

90 名前:デフォルトの名無しさん mailto:sage [2024/10/07(月) 22:54:11.40 ID:nsk0Xk2O0.net]
>>88
そんなものサンプルがないからこれは本物



91 名前:デフォルトの名無しさん [2024/10/08(火) 23:32:02.99 ID:2RqDvWQU0.net]
>>88さん
みんなで考えよう!
print("ゾーマが現れた")
zoma == HP10000
print("勇者が笛を吹いた")#笛を吹くと仲間が一定数増える。
print("笛のおかげで戦士が仲間になった")
print("zomaは何も攻撃してこない)#攻撃したらもっとプログラムの量が増えるから割愛w
yusya kougeki =40
print("40のダメージを与えた")
senshi = 100
if zomaの体力が0になった
print("zomaは死んだ"
elif:
yusya=yusyakougeki
だめだ
あたまがいたくなってきたw

92 名前:デフォルトの名無しさん [2024/10/08(火) 23:41:03.98 ID:2RqDvWQU0.net]
もっとシンプルにいこう!
if文でいいはずw
number = int(input())
print(number)

if number == 10:
print(str(number) + "のダメージは10に等しい")
elif number > 10:
print(str(number) + "のダメージは10より大きい")
else:
print(str(number) + "のダメージは10未満")

ここまでできたw

93 名前:デフォルトの名無しさん [2024/10/08(火) 23:58:45.01 ID:2RqDvWQU0.net]
yousya=you
senshi=sen
karateka=kara
あぶねー初期化忘れてたわw
you,sen,kara=0
これでよしw
次は割合に入るから気合いれなw
number = int(input())
print(number)
#その前にランダム要素を入れるの忘れてたw
import random
random.random()
random.randint(1回攻撃、二回攻撃)
if numberyou == 153:
print(str(number) + "は153に等しい")
elif number > 200:#勇者は二回攻撃なので、153と200の攻撃=攻撃となる。
print(str(number) + "senはyouより大きい")
else:
print(str(number) + "の攻撃力はsenとyou")
まだまだだなーw誰か一緒にとかないかい?w

94 名前:デフォルトの名無しさん [2024/10/09(水) 00:28:36.20 ID:4B3K5XUV0.net]
そっか、フローチャートにしたほうがみやすいかw
'''スタートです。ラスボスは1匹。ゾーマです。ゾーマの攻撃は3回連続です。
こっちのキャラクターは勇者、戦士、魔法使い、僧侶、賢者、遊び人、魔法剣士、武道家の8人
また敵のスピードは8人より遅いのでいつも最後にゾーマのターンになります。
呪文が一切効かない。そのため、勇者、戦士、魔法剣士、武道家の攻撃のみで倒さないといけません。あと変数は勇者はyou、戦士はsen,魔法剣士はmaho ,武道家はbu。僧侶、賢者、遊び人は体力が減ったら回復呪文を唱えます。''
勇者以外全員体力が999です。
勇者は体力が500です。
100 スタート  
200 変数を初期化する  
ゾーマが生きている場合
you,sen,bu,mahoが攻撃をする
それ以外は体力が減ったら回復につとめる
ゾーマのHPは5万。
youの攻撃は3回連続して足した値
senの攻撃も3回連続
mahoも3回連続
buも3回
設定で自由かできる。
a=ガンガンいこうぜ!
print("ガンガンいこうぜ!)
b=体力回復を最優先にしようぜ!
print("体力の回復を優先しよう!)
c=攻守のバランスがいい
print("攻守のバランスがいい)
続く。。。w

95 名前:デフォルトの名無しさん [2024/10/09(水) 02:09:25.11 ID:4B3K5XUV0.net]
これでいいやw面倒だしw

# RPGの攻撃状況を再現

# モンスターと戦っている。
# 1から10のサイコロをふって、
# 6未満の場合、サイコロの目だけダメージを与えたと表示。
# 6以上の場合、クリティカルヒットとして、100のダメージを与えたと表示。
# 0の場合、防御されたとして、0ダメージを表示。

import random
hit = random.randint(0,10)
if 1 <= hit < 6:
print("スライムに、" + str(hit) + "のダメージを与えた!")
elif hit >= 6:
print("クリティカルヒットダメージ100を与えた")
else:
print("ダメージは、" + str(hit) + "防御された")

96 名前:デフォルトの名無しさん mailto:sage [2024/10/09(水) 08:32:08.43 ID:URDCdGxSa.net]
スレチうんこはBAN汁

97 名前:デフォルトの名無しさん [2024/10/09(水) 09:42:13.95 ID:1k3A/F0A0.net]
福祉系か

98 名前:デフォルトの名無しさん [2024/10/09(水) 09:43:01.06 ID:1k3A/F0A0.net]
>>88
福祉案件

99 名前:デフォルトの名無しさん [2024/10/09(水) 10:51:29.69 ID:MfPA4Dhe0.net]
match文使え

100 名前:デフォルトの名無しさん mailto:sage [2024/10/09(水) 12:30:53.22 ID:L0RwG3mX0.net]
使ったことない



101 名前:デフォルトの名無しさん mailto:sage [2024/10/09(水) 15:51:29.02 ID:wjyYHYx1M.net]
html → javascript浅 → php → javascript深 → python

と来てついにc++に手出すことにしたわ
専業でもないしpythonだけで自分のやりたいことほぼなんでもできるし見向きすらしなかった

$ sudo apt install tree build-essential cmake pkg-config
これだけで開発環境整うとは知らなかった
pythonスクリプトと連携して簡単に開発できるか検討中

102 名前:デフォルトの名無しさん mailto:sage [2024/10/09(水) 15:56:04.77 ID:L0RwG3mX0.net]
自分が高速化しなければ
という余地が残ってればいいけど

電子工作とかと同じで、一通りできるようになったけど作るものが何もない状態になる

103 名前:デフォルトの名無しさん [2024/10/09(水) 17:59:18.01 ID:1k3A/F0A0.net]
>>100
llvm使ってgplから逃げろ

104 名前:デフォルトの名無しさん (ワッチョイ cafa-lt6P) mailto:sage [2024/10/11(金) 03:18:27.10 ID:bCU/2bPQ0.net]
https://imonar.com/PKQJotV.jpg

105 名前:デフォルトの名無しさん mailto:sage [2024/10/11(金) 16:07:56.09 ID:tTImpqsq0.net]
python+opencvすげえ!
たった10行くらいでwebカメラの動画表示された!ものの1,2分のコーディングじゃん
皆pythonに移行するわけだなこんな便利なライブラリあったら他のやってられねえわ

106 名前:デフォルトの名無しさん mailto:sage [2024/10/11(金) 19:42:25.28 ID:fZZZF+Af0.net]
大事なのは表示されてからだぞ
どういうアプリを提供するのか?
これだけライブラリが進化してるのにそれを使って大したアプリが出てないことを考えると
簡単かどうかは関係がない

107 名前:デフォルトの名無しさん mailto:sage [2024/10/11(金) 23:05:48.34 ID:V8K6PYDOd.net]
PythonはPoC止まり言語というイメージあるよね
「やってみた」ともいう

108 名前:デフォルトの名無しさん mailto:sage [2024/10/11(金) 23:05:48.34 ID:V8K6PYDOd.net]
PythonはPoC止まり言語というイメージあるよね
「やってみた」ともいう

109 名前:デフォルトの名無しさん mailto:sage [2024/10/12(土) 00:58:43.18 ID:3/0Ne1V+0.net]
1817を渡すと'00:30:17'に変換してくれる関数ってある?

110 名前:デフォルトの名無しさん mailto:sage [2024/10/12(土) 01:09:25.66 ID:3/0Ne1V+0.net]
import datetime
td = datetime.timedelta(seconds=1817)
print(td)

これで '0:30:17' が表示される
ただし、'00:30:17' ではない

print(f'{td:%H:%M:%S}')
みたいなことをしてもエラーになる
妙に融通が利かない



111 名前:デフォルトの名無しさん [2024/10/12(土) 07:14:47.22 ID:5rKKsk01d.net]
本物の馬鹿っているんだな

112 名前:デフォルトの名無しさん mailto:sage [2024/10/12(土) 08:38:00.65 ID:g42aTpjG0.net]
import datetime
dt = datetime.datetime(year=2001, month=1, day=1)
td = datetime.timedelta(seconds=1817)
print(f'{dt+td:%H:%M:%S}')

こうやると'00:30:17' を得ることができる
せめてyearとかが省略可能だったら

113 名前:デフォルトの名無しさん mailto:sage [2024/10/12(土) 11:17:40.09 ID:xwLOOV9/0.net]
pip install モジュール名==
でモジュールのバージョン一覧が出る機能っていつのまにか無くなってんだな
便利だったのになんでだろ

114 名前:デフォルトの名無しさん [2024/10/13(日) 10:02:03.52 ID:UZT3uuKDa.net]
>>104
入り口が広い(初心者向け)っていうのは重要だけど
込み入ったことしようとすると速度とか色々気になって来る
まあ気になったら乗り換えればいいんだけど

115 名前:デフォルトの名無しさん [2024/10/13(日) 10:03:05.15 ID:UZT3uuKDa.net]
>>105
そうほんとそれ
みんなサンプル動かして満足して終わり

116 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 10:17:48.38 ID:UZT3uuKDa.net]
>>111
>>> import time
>>> print(time.strftime('%H:%M:%S', time.gmtime(1817)))
00:30:17

117 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 10:26:22.93 ID:5hnynBwd0.net]
print(f'{time.gmtime(1817):%H:%M:%S}')
こうは書けないんだよな
書けても誰も困らないだろうに

118 名前:Aもう更新の止まった古いモジュール []
[ここ壊れてます]

119 名前:デフォルトの名無しさん [2024/10/13(日) 11:57:56.51 ID:HElLI/1G0.net]
pythonむずい

120 名前:デフォルトの名無しさん [2024/10/13(日) 12:19:27.14 ID:UZT3uuKDa.net]
>>116
これもだめっぽ?
import time
tt = time.gmtime(1817)
print(f'{tt:%H:%M:%S}')



121 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 12:24:50.27 ID:5hnynBwd0.net]
試したら判るがな
TypeError: unsupported format string passed to time.struct_time.__format__

formatをサポートしていない
サポートしていないものを新たにサポートさせても、既存のコードには何の影響もない
だから、python 3.4で追加しましたとかなってても不思議ではないけど、
もうtimeモジュールは捨てられている

122 名前:デフォルトの名無しさん [2024/10/13(日) 14:44:15.99 ID:UZT3uuKDa.net]
自分で追加したらええんやで

123 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 14:54:11.13 ID:5hnynBwd0.net]
電池が自作できます

124 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 15:56:29.59 ID:Lfw+7lSHd.net]
勉強になったわthx
https://paiza.io/projects/fWmiW0ZJcfGIiFRKkL1YTw

125 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 17:39:27.08 ID:5hnynBwd0.net]
import datetime
class My_timedelta(datetime.timedelta):
  def __init__(self, seconds):
    self.dt = datetime.datetime(year=2001, month=1, day=1) + datetime.timedelta(seconds=seconds)
  def __format__(self, format):
    return self.dt.strftime(format)

td = My_timedelta(seconds=1817)
print(f'{td:%H:%M:%S}')
print(f'{datetime.datetime.now()+td:%H:%M:%S}')

これは継承の練習問題でしょう
既存のtimedeltaに__format__を追加する

126 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 20:18:44.93 ID:XBbSNdN/0.net]
timedeltaをdatetime用の書式で表現したら
間違いが起こりそうで怖いのは気のせいか

127 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 21:05:07.54 ID:5hnynBwd0.net]
マイナスを渡すと23:29:43とかになる
多分欲しいのは、-00:30:17

128 名前:デフォルトの名無しさん [2024/10/13(日) 21:18:08.75 ID:TikvsAQNM.net]
>>125
時刻と時間は別物だし、文字列として持っていればいい話。

129 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 21:20:20.02 ID:4MeCS0kR0.net]
td = datetime.timedelta(seconds=1809)
print(str(td).zfill(8))

これはだめ?

130 名前:デフォルトの名無しさん mailto:sage [2024/10/13(日) 22:02:19.97 ID:5hnynBwd0.net]
さすがに小手先すぎる
マイナスにも対応できない

そして秒は小数点以下1桁も表示することという仕様変更により、
3600で割ったりして全部自前で作ることになった



131 名前:デフォルトの名無しさん [2024/10/13(日) 23:12:53.64 ID:0McD6feo0.net]
マイナスの日時という発想がわからない

132 名前:デフォルトの名無しさん [2024/10/13(日) 23:36:18.34 ID:cfTcGRh7a.net]
仕様後出し過去悪い

133 名前:デフォルトの名無しさん mailto:sage [2024/ ]
[ここ壊れてます]

134 名前:10/14(月) 00:55:34.21 ID:hhbIrBZG0.net mailto: import datetime
s = -1816.123
g = (s>0)-1
td = str(datetime.timedelta(seconds=abs(s))).split(".")
print(f'{str(g)[0]}{td[0].zfill(7-g)}.{td[1][:1]}')#-00:30:16.1
[]
[ここ壊れてます]

135 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 00:58:07.55 ID:63V1I12+0.net]
1日超えたら駄目だったわ >>131

136 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 01:01:58.25 ID:Na+e0b340.net]
0で折り返すのは、abs()で処理して<0だったら'-'付ける、だろうなあ
流用できる処理が無い

137 名前:デフォルトの名無しさん [2024/10/14(月) 02:27:55.47 ID:iqlRL8W80.net]
秒数を時分に変えるのは60で割ればいい話だろうにw

138 名前:デフォルトの名無しさん [2024/10/14(月) 03:26:42.21 ID:iqlRL8W80.net]
>>131
0.123が何を指しているのかわかる方がおかしい

139 名前:デフォルトの名無しさん [2024/10/14(月) 03:29:11.20 ID:iqlRL8W80.net]
>>133
四則計算と文字列を任意の日時フォーマットにするだけだぜ?

日時データ型をいじるというのはコンピューターが最も苦手な計算。

140 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 06:09:53.67 ID:cfRK145W0.net]
>日時データ型をいじるというのはコンピューターが最も苦手な計算。

馬鹿なのか



141 名前:デフォルトの名無しさん [2024/10/14(月) 06:26:06.92 ID:iqlRL8W80.net]
>>137
64ビットだぜ?

142 名前:デフォルトの名無しさん [2024/10/14(月) 06:28:17.12 ID:iqlRL8W80.net]
しかもまだ過渡期だから、実際は32ビットで計算している。

2036年問題だってすべてが対策済みというわけでもない。

143 名前:デフォルトの名無しさん [2024/10/14(月) 06:29:49.49 ID:iqlRL8W80.net]
60で割って1000で割るとか、64ビットだけではできない。

144 名前:デフォルトの名無しさん [2024/10/14(月) 08:54:29.92 ID:B2/CkVb50.net]
小数の誤差の話をしてる?
日時や時刻を扱う上で問題になるような誤差が出ることはなくない?
どんなに厳しい分野でも必要なのはナノ秒の数値までだろうし

145 名前:デフォルトの名無しさん [2024/10/14(月) 08:56:37.40 ID:9n6nFJIZa.net]
>>136
おまいが計算苦手なだけだろ

146 名前:デフォルトの名無しさん [2024/10/14(月) 10:43:52.07 ID:iqlRL8W80.net]
>>141
64ビットCPUは64ビットのレジスタと外部とのやりとりが64ビットだ。

彼は1/1000秒まで正確に求めたいらしいが、2進数は10進数の表現ができない。

例えば10進数の1000は2進数だと1024になってしまう。

コンピューターは10進数の計算が苦手、時分秒なんてコンピューターには概念すらない。

147 名前:デフォルトの名無しさん [2024/10/14(月) 10:44:50.51 ID:iqlRL8W80.net]
>>141
質問しているやつは秒を分にする方法を知らない。
60で割るということもわからない。

148 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 11:01:11.87 ID:XiI9iPvI0.net]
そもそも質問ってなんなの
>>108 からの >>111、派生で>>116
後出しで
・マイナス
・小数点以下
にも対応

ようは、ほんとはdatetimeかtimeで
一発で書きたい
もしくは、
出来る限り自作関数など無しで書きたい
だと思うけど

149 名前:デフォルトの名無しさん [2024/10/14(月) 11:01:57.59 ID:iqlRL8W80.net]
初心者は数値は数値型、文字列は文字列型とか意味もわからずにデータ型を決めたがるよな。

hh:mm:ssは日時型という内部表現と画面に表示されている見た目を混同するあたりも意味がわからない。

150 名前:デフォルトの名無しさん [2024/10/14(月) 11:04:17.72 ID:iqlRL8W80.net]
>>145
秒数を60で割る、ミリ秒は1000で割るという秒と分の換算がわからないというPython以前の問題児



151 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 11:52:49.48 ID:H9fWIyl80.net]
>>145
一発で書く方法はないので自作関数必須
いずれにしろ入力フォーマット、入力値の範囲、必要精度、出力フォーマットの仕様が必要

この程度は標準で用意しといてくれよという気持ちはよく分かる

152 名前:デフォルトの名無しさん [2024/10/14(月) 12:36:08.87 ID:iqlRL8W80.net]
>>148
それだとあなたが存在する必要がない

153 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 12:38:01.47 ID:upEjQ6n10.net]
>>143
>彼は1/1000秒まで正確に求めたいらしい
どこを見てそんな解釈したんだ?

154 名前:デフォルトの名無しさん [2024/10/14(月) 12:44:19.92 ID:iqlRL8W80.net]
>>150
131 デフォルトの名無しさん (ワッチョイ eb61-lE/J) sage 2024/10/14(月) 00:55:34.21 ID:hhbIrBZG0
import datetime
s = -1816.123
g = (s>0)-1
td = str(datetime.timedelta(seconds=abs(s))).split(".")
print(f'{str(g)[0]}{td[0].zfill(7-g)}.{td[1][:1]}')#-00:30:16.1

155 名前:デフォルトの名無しさん [2024/10/14(月) 12:45:05.98 ID:iqlRL8W80.net]
1816.123秒という例を本人が書いている

156 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 12:48:52.68 ID:o4N23i0F0.net]
60で割って云々はちょっとズレているというかアスペ感があるのでひとまずその問題は置いといて
ストップウォッチ風な表記をdatetimeかtimeで一発で出せたらいいのに、ってことなら
そもそもストップウォッチって
0’00’’00
だったような
なら0:00:00でよくて
別に2桁縛りの0埋めじゃなくてもよくね
ミリ秒部分は知らないけど

157 名前:デフォルトの名無しさん [2024/10/14(月) 12:52:58.55 ID:iqlRL8W80.net]
>>153
彼はフォーマットのことも言っているが、1816秒を分に変換する方法がわからない。

1分は60秒だ。1000ミリ秒は1秒。

158 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 12:53:22.00 ID:NoA08L9i0.net]
0:00:00
10:00:00
これが揃ってないのがむずむずする
みたいな問題だとしたら
日付関数というよりprintなど出力フォーマット側の仕様にした方が個人的にはしっくりくる

159 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 12:53:51.85 ID:upEjQ6n10.net]
>>151
-1816.123という秒の単位で期間を表現した数値を
HH:MM:SS.0やHH:MM:SS.000形式の文字列にフォーマットしたいというのと
1/1000秒まで正確に求めたいというのは全然別の話じゃん

しかもそれ本人じゃないだろ

160 名前:デフォルトの名無しさん [2024/10/14(月) 12:54:47.77 ID:iqlRL8W80.net]
本当に60秒が1分だと知らないのかもしれない。

datetimeライブラリなんか使う必要もない。



161 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 12:55:18.84 ID:+rCJDD4J0.net]
>>154
おまえはズレてるのでちょっと会話できないわ すまんね
そもそも>>131は別人だしお前以外は流れでわかってると思うよ

162 名前:デフォルトの名無しさん [2024/10/14(月) 12:58:59.46 ID:iqlRL8W80.net]
>>158
本人の書き込み
109 デフォルトの名無しさん (ワッチョイ 4f54-O9y3) sage 2024/10/12(土) 01:09:25.66 ID:3/0Ne1V+0
import datetime
td = datetime.timedelta(seconds=1817)
print(td)

これで '0:30:17' が表示される
ただし、'00:30:17' ではない

print(f'{td:%H:%M:%S}')
みたいなことをしてもエラーになる
妙に融通が利かない

163 名前:デフォルトの名無しさん [2024/10/14(月) 13:00:47.49 ID:iqlRL8W80.net]
1817秒を30分17秒と単純に割り算をして、文字列をくっつければいい簡単な話だぜ。

164 名前:デフォルトの名無しさん [2024/10/14(月) 14:04:34.65 ID:2T1ySmhp0.net]
54に続いて78が爆誕か
>>143の3行目とかマジでどういう脳ミソしてんだろう

165 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 14:11:38.27 ID:mb36WxU50.net]
>>155
printによる出力フォーマットは出力する値の型(ここではdatetime型やtimedelta型)に依存してるんだぞ

166 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 14:11:47.79 ID:vJAIv8ZI0.net]
最初の質問って「ある」「ない」を聞いてるだけじゃね?
無ければ自分で作るかぁ、みたいな
作り方なんて分かってる上での質問でしょ

167 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 14:28:50.30 ID:CJVgcXbL0.net]
>>162
その理論だとprintにオプションなくてもいいよね

168 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 15:04:56.69 ID:Nrkl1oO4d.net]
判ってると思うけど
1000 で割るより 1000000 で割った方が良い

169 名前:デフォルトの名無しさん [2024/10/14(月) 15:56:41.32 ID:iqlRL8W80.net]
数値

時刻

文字列

という奇妙なデータ型変換

170 名前:デフォルトの名無しさん [2024/10/14(月) 16:00:42.53 ID:cfRK145W0.net]
>>166
馬鹿が発狂した



171 名前:デフォルトの名無しさん [2024/10/14(月) 16:05:57.37 ID:iqlRL8W80.net]
最終的な時刻フォーマットは時、分、秒がわかっていればいいだけなのにな。

1817秒÷60の結果で30分と17秒という分数と秒数が出せる。

172 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 16:38:57.17 ID:u3iQG5/50.net]
def convert_1817(sec):
  if sec == 1817:
    return '00:30:17'
  else:
    raise ValueError('sec must be 1817')

print(convert_1817(1817))

173 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 17:32:36.62 ID:dK7b/9hZ0.net]
20レスもしていて簡単なサンプルコードも書けないという事実

174 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 17:41:03.15 ID:rj+zMLjj0.net]
むしろ誰がコードなんて欲してるの?

175 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 18:10:36.90 ID:Q0jRvIa ]
[ここ壊れてます]

176 名前:r0.net mailto: 回答としては
質問の要求を満たす何らかの
・関数
・datetimeやtimeなどオプションやメソッド
の掲示、なければ無い
場合によってはノーコードにもならない

ただひとつ確実に言えることは
割る60だの算出方法にひたすら拘っているアスペっぽいやつが的外れだということ
[]
[ここ壊れてます]

177 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 18:27:31.94 ID:/mng7eSx0.net]
アスペおじさんもだけど君も大概やで
>>131とか>>164とかギャグじゃなければヤバいぞ

178 名前:デフォルトの名無しさん [2024/10/14(月) 18:33:31.99 ID:iqlRL8W80.net]
>>170
数字とコロンを連結するというところがなぜかprint関数でやるというヘンテコ話になっているからネタかもしれない。

179 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 19:40:06.63 ID:m36PLLju0.net]
経験上、文句を言うだけで理由を言語化できない人の方がヤバい人は多いですね

180 名前:デフォルトの名無しさん mailto:sage [2024/10/14(月) 19:42:21.98 ID:dmvKd1h40.net]
1f78-oCgEだけは段違いで会話が成立しないレベル
レス数から言ってもわざとやっているとは思えない



181 名前:デフォルトの名無しさん [2024/10/14(月) 19:44:03.40 ID:iqlRL8W80.net]
printさせるのはいかにも入門書という感じだけどさ、データ型の概念もなければ、データ型を変換するキャストも知らない。

ms = 1817
= f'{num:04}'
ji = = f'{num:(ms // 3600)02
fun = ms // 60
byo = ms % 60

() + (1817 / / 60) + ':' + (1817 % 60)

182 名前:デフォルトの名無しさん [2024/10/14(月) 19:44:17.15 ID:iqlRL8W80.net]
めんどくせぇな






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<252KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef