質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

4回答

167閲覧

ff秒の最後の桁を切り捨て

sssscs

総合スコア7

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2018/01/28 23:28

m:ss.ffの書式にフォーマットff最後の桁を切り捨てたいです。
m:ss.fにしたいです。

time_sapmle = re.split('[.]',time)
if len(time_sapmle) != 1:
time_sapmle 切り捨て処理したい

宜しくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

こういうイメージでしょうか?

python

1import time 2 3t_1 = time.time() 4input() 5t_2 = time.time()+300 # 5分以上経過とする 6dt = t_2 - t_1 7 8m = int(dt/60) 9ss = dt%60 10ff = str(ss).split('.')[1][-2:] 11ss = ('0'+str(ss).split('.')[0])[-2:] 12 13time_sample = f'{m}:{ss}.{ff}' 14 15print(time_sample) 16if len(time_sample) != 1: 17 time_sample = time_sample[:-1] 18 print(time_sample)

出力例

plain

15:13.16 25:13.1

実行すると入力待ちになるので適当な時間待ってEnterしてみてください。

まぁミソの部分はtime_sample[:-1]だけです。フォーマットが絶対にm:ss.ffであることが約束されるならば、[:-1]で最後のfだけ取り除いてしまえばいいと思います。

投稿2018/01/29 01:57

編集2018/01/29 02:08
namnium1125

総合スコア2043

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

既に回答がついているので蛇足っぽいですが、取得するデータが仮にdatetime型だった場合を想定して書いてみました。

Python

1from datetime import time 2t = time(hour=12, minute=4, second=6, microsecond=123456) #例として12:04:06.123456を定義 3print(t) 4# ここのスライシングで文字の切出しをおこなっています。 5print(t.strftime("%M:%S.%f")[0:7])
実行結果 12:04:06.123456 04:06.1

元々文字列である場合はnamnium1125の仰っている通り、最後の一文のここが分かればいいと思います。

まぁミソの部分はtime_sample[:-1]だけです。フォーマットが絶対にm:ss.ffであることが約束されるならば、[:-1]で最後のfだけ取り除いてしまえばいいと思います。

投稿2018/01/29 02:59

Yuki_S

総合スコア356

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ffが必ず二桁以上ある場合

python

1time_stamp = time[:-1]

ffが一桁のこともある場合

python

1time_stamp = time[:time.find('.')+2]

投稿2018/01/29 05:59

fuzzball

総合スコア16731

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

namnium1125さんのコードがベースです。
ゼロ埋めで確定させればif文が要らなくなります。

python

1import time 2 3t_1 = time.time() 4t_2 = time.time()+0.1 # 5分以上経過とする 5dt = t_2 - t_1 6 7m = int(dt/60) 8ss = dt%60 9ff = str(ss).split('.')[1][-2:] 10ss = ('0'+str(ss).split('.')[0])[-2:] 11 12time_sample = f'{m}:{ss}.{ff:0>2}' 13 14print(time_sample[:-1])

投稿2018/01/29 05:38

mkgrei

総合スコア8560

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問