python list使用示例 list中找连续的数字
线上有个需求,格式化,从一堆s1,s100-s199中找出连续的服并且格式化显示出来,如:
神魔:S106-109,s123,s125
御剑: s106-109,s123,s125
代码如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# 2014/01/15 14:15
import sys
from itertools import *
from operator import itemgetter
def parse(filename):
d = {}
for line in open(filename, 'r'):
_line = line.split()
d.setdefault(_line[0], []).append(_line[1])
for key in d.keys():
data = sorted(map(lambda x: int(x[1:]), d[key]))
sys.stdout.write(key + " ")
for k, g in groupby(enumerate(data), lambda (i, x): i - x):
ret = map(itemgetter(1), g)
if len(ret) > 1:
sys.stdout.write("S%d-%d," % (ret[0], ret[-1]))
elif len(ret) == 1:
sys.stdout.write(str("S%s") % ret[0] + ",")
sys.stdout.write('\n')
if __name__ == "__main__":
filename = sys.argv[1]
parse(filename)

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









スタンバイは、iPhone が充電器に接続され、水平 (または横) 向きになっているときにアクティブになるロック画面モードです。これは 3 つの異なる画面で構成されており、そのうちの 1 つは全画面表示されます。時計のスタイルを変更する方法については、この記事を読んでください。 StandBy の 3 番目の画面には、垂直にスワイプできるさまざまなテーマで時刻と日付が表示されます。一部のテーマでは、温度や次のアラームなどの追加情報も表示されます。時計を押し続けると、デジタル、アナログ、ワールド、ソーラー、フローティングなどのさまざまなテーマを切り替えることができます。 Float はカスタマイズ可能な色の大きなバブル数字で時間を表示します。Solar はさまざまな色の太陽フレアのデザインを備えたより標準的なフォントを持ち、World は世界を強調表示して表示します。

乱数や英数字の文字列を生成する機能は、多くの状況で役立ちます。これを使用して、ゲーム内のさまざまな場所に敵や食べ物をスポーンできます。これを使用して、ユーザーにランダムなパスワードを提案したり、ファイルを保存するためのファイル名を作成したりすることもできます。 PHP でランダムな英数字文字列を生成する方法に関するチュートリアルを書きました。この投稿の冒頭で、真にランダムなイベントはほとんどないと述べましたが、乱数や文字列の生成にも同じことが当てはまります。このチュートリアルでは、JavaScript で擬似ランダムな英数字文字列を生成する方法を説明します。 JavaScript での乱数の生成 まずは乱数を生成してみましょう。最初に思い浮かぶメソッドは Math.random() です。これは浮動小数点を返します。

数値を出力として表現することは、どの言語でプログラムを作成する場合でも興味深い、重要な作業です。整数型 (short、long、または Medium 型のデータ) の場合、出力として数値を表すのは簡単です。浮動小数点数 (float または double 型) の場合、特定の小数点以下の桁数に四捨五入する必要がある場合があります。たとえば、52.24568 を小数点以下 3 桁で表現したい場合は、前処理が必要です。この記事では、浮動小数点数を四捨五入して特定の小数点以下の桁数に表現するいくつかのテクニックを紹介します。さまざまなアプローチの中でも、C に似たフォーマット文字列を使用すること、precision 引数を使用すること、および数学ライブラリのround() 関数を使用することが重要です。一つずつ見ていきましょう。と

私たちは皆、2、3、5、7、8 など、数の 2 乗ではない数字を知っています。非正方形の数は N 個あり、すべての数を知ることは不可能です。そこで、この記事では、平方なしまたは非平方数と、C++ で N 番目の非平方数を見つける方法についてすべて説明します。 N 番目の非平方数 数値が整数の 2 乗である場合、その数値は完全平方と呼ばれます。完全平方数の例としては、-1issquareof14issquareof29issquareof316issquareof425issquareof5 などがあります。数値がどの整数の平方でもない場合、その数値は非正方形と呼ばれます。たとえば、最初の 15 個の非平方数は -2、3、5、6 です。

この記事では、2 から 10 までのどの数値でも割り切れない 1 から n (指定された) までの数値を見つける問題について説明します。いくつかの例でこれを理解しましょう - 入力:num=14出力:3説明:Therearethreenumbers,1,11,and13,thatarenotdivisible.Input:num=21Output:5説明:Therearefivenumbers1,11,13,17,and19,thatarenotdivisible. 解決済み シンプルなメソッド if

Java の数値 数値クラスは有形のクラスではなく、抽象クラスであることを理解することが重要です。その中には、その機能を定義する一連のラッパー クラスがあります。これらのラッパー クラスには、Integer、Byte、Double、Short、Float、Long が含まれます。これらは前に説明したのと同じ基本的なデータ型ですが、クラスの命名規則に準拠するために大文字の名前を持つ別のクラスとして表されていることに気づくでしょう。コンパイラは、特定の関数またはプログラム スコープの必要に応じて、プリミティブ データ型をオブジェクトに、またはその逆に自動的に変換します。数値クラスは java.lang パッケージの一部です。このプロセスは、オートボックス化およびアンボックス化と呼ばれます。数値クラスとそれに対応するラッパー クラスの抽象的な性質を理解することで、次のことが可能になります。

たとえば、数値 N が与えられた場合、その数値を最大の素数に分割する必要があるという問題について説明します。N から素数を引いて、素数の差を確認できます。差が素数であれば、N を 2 つの素数の和として表すことができます。しかし、ここで私たちはしなければなりません

5月7日、当社の携帯電話メーカーは、当社のGTNeo6発売カンファレンスが5月9日に予定されていると正式に発表しました。私のGTNoe6は「パフォーマンスの嵐」と位置付けられており、ミッドレンジマシンの状況を揺るがすことを目的としています。なお、今回のカンファレンスは携帯電話業界初のAIデジタルヒューマンカンファレンスでもあります。その際、Realme副社長、グローバルマーケティング社長、中国国家主席のXu Qi氏がデジタルヒューマンの姿で記者会見に登場する。デジタルマン Xu Qi 公式紹介によると、コードネーム「ハリケーン」の Realme GTNoe6 はより高速かつ強力で、最強の第 3 世代 Snapdragon 8s フラッグシップおよびクラス最強の製品に挑戦します。最近、Realme GTNeo6 が電子商取引プラットフォームに直接接続されていることが判明し、このマシンが Snapdragon 8s プロセッサを搭載しているだけでなく、120W のフラッシュ充電もサポートしていることが明らかになりました。
