Python

One liner for quick sort in Python

print (lambda a:len(a)>1 and sum([(type(lambda: 0)(__import__('sys')._getframe().f_code, globals()))(filter(lambda x:x<a[0], a[1:])), [a[0]], (type(lambda: 0)(__import__('sys')._getframe().f_code, globals()))(filter(lambda x:x>a[0], a[1:]))], []) or a)([2,4,1,5,631,74,96,47,63,44,21,14,5,70,7,9,7,44…</a[0],>

Pythonでワンライナー再帰できたー!! (Recursive as one liner in Python)

(lambda x: x==1 and 1 or x + type(lambda: 0)(__import__('sys')._getframe(0).f_code, globals())(x-1))(10) めっさ大変だったー。。。

iOSの(多分)NativeなAPIを自由自在に叩く

https://itunes.apple.com/jp/app/python-2.7-for-ios/id485729872?l=en&mt=8昔_ctypes止まりで使えなかったctypesが、今使えるようになってて、 import ctypes libc = ctypes.CDLL('libc.dylib') print libc.printf('ok') # 2 will be printed as outputed …

FizzBuzzその3

[b==c=='' and a or b+c for a, b, c in reduce(lambda x, i: x+zip(range(1+15*i, 16+15*i), (['']*2+['Fizz'])*5, (['']*4+['Buzz'])*3), range(999), [])][:100]

PythonからWindows Spoolerをctypesで叩く

#!/usr/bin/env python # -*- coding:utf-8 -*- """\ Utility class for wrapping Winspool.drv with ctypes. GetPrinter function http://msdn.microsoft.com/en-us/library/windows/desktop/dd144911(v=vs.85).aspx PRINTER_INFO_1 structure http://msdn.…

Get download URL of released files on Codeplex.

# Here is respective base code written in Ruby: # https://github.com/opscode-cookbooks/wix/blob/master/libraries/codeplex.rb] # # I added __RequestVerificationToken2 handling to above code for the future. # This code is working properly in…

tempfile.mkdtemp()へfuseマウントした後のゴミ掃除

プログラムがAbortした時とか mount | grep fuse | awk 'BEGIN{FS="on "}{print $2}' | awk 'BEGIN{FS=" "}{print $1}' | grep tmp |xargs -n1 fusermount -u

あえてPythonの弱点をあげてみる

変数に型がないということの利点について考えるを読んで。 class A(object): def __init__(self): self.length = 0 def get_length(self): return self.length a=A() if something==wrong: logger.error('Length: %s'%a.get_lenght()) 要するにエラー処理の…

ExcelでVBAを書かずにJSON形式で返却されるはてブ数を取得

知り合いから「Excel 2013で追加された「WEBSERVICE」関数を使って、マクロを使わずWeb APIを利用する。」を教えて頂いたのでそれを応用。また「はてブAPIはJSON形式で値を返却*1」と「ExcelでJSONを扱おうとするとVBAが必要っぽい」という条件があわさった…

Pythonを使ってFizzBuzz、乗算(*)除算(/)余算(%)なしの一行で

mapとかreduceを覚えたので前回の書き直し 今回 [(s[0]!='F' and s.find('B')+1) and s[-4:] or s for s in reduce(lambda x,y: x+[(x[-3][0]=='F' and 'Fizz' or str(y+6))+(x[-5].find('B')+1 and 'Buzz' or ''),], xrange(100), ['1', '2', 'Fizz', '4', …

「フィボナッチで各種言語をベンチマーク」をPythonでちょっと掘り下げる。

「フィボナッチで各種言語をベンチマーク」を読んで、予想外にPythonの順位が低かったので。手元の環境はWindows XP SP3/Celeron 1200MHz/512MB RAMのPython 2.7.3、実行2回目以降の時間を以下のコマンドで計測。 rem 「cmd /V:ON」で遅延評価を有効化した状…

DDO!更新スクリプト

#!/usr/bin/env python # -*- coding:utf-8 -*- domain = "YourDomain" passwd = "YourPasswd" import os, urllib2 import logging logging.basicConfig( level=logging.DEBUG, format="%(asctime)s | %(name)s | %(levelname)s | %(message)s", filename=os…

Amazon Cloud Driveをコマンドラインで管理する

Amazon Cloud Driveが日本でもリリースされたことを受けてサードパーティのPythonモジュールをwww.amazon.co.jpに対応させました。その記念に少し書きます。 準備 Python 2.xとSVNをインストールしてください。Debianなら以下のコマンドで一発です。 $ sudo …

コマンドラインからSharePoint Online(Office 365)へファイルをアップロード

現時点でMicrosoft Online Services モジュールを使ったSharePoint関連の管理はできなさそうだし、でもMicrosoftのWEBサービスを一からスクレイピングするのは相当骨が折れるし、っていうか絶対無理、クッキーに一個だけBase64エンコードされた値があって、…

PythonでWebスクレイピングサンプル

RubyでWebスクレイピングするためのサンプルを読んで。標準ライブラリを使って正規表現で無理矢理に。でも大抵これで不便しないから不思議。 import re, urllib2 model_number = 'L32-V09' res = urllib2.urlopen("http://kakaku.com/search_results/%s"%mod…

昔作ったPython製ライブラリのカバレッジ測ってみた

かっこ悪くて面倒でもテストコードを書こうを読んで。私は職業プログラマではありませんが、unittestでテストを書きながらコーディングすれば良い物が出来るという体感はありました。で、カバレッジって何だ?どうやって測るんだ?って思って調べてみると、P…

easy_install pysnmpしようと思ったらvcvarsall.bat無いよエラー。

Visual C++ 2008 Express Edition http://go.microsoft.com/?LinkId=9348304上記をインストールするだけではWindows 7 64bitでvcvarsall.batが実行できない。 '"vsvars32.bat"' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファ…

なぜPythonが好きか

友人の結婚式2次会でアルコホリックな脳みそで駄文を。まず第一にほどよくライトなところ。メモ帳なりviで書いたらすぐに実行出来るところ。Windowsでmsi入れたら拡張子が関連づけられる点も何気に高得点。次にIDEいらない点。eclipseとかnetbeansとか正直ダ…

Pythonを使ってFizzBuzz、余算(%)なしの一行で

[b==c=="" and a+1 or b+c for a,b,c in zip(xrange(100),["","","Fizz"]*(100/3),["","","","","Buzz"]*(100/5))]

PythonでAudioToolboxを捕まえる

最近Pythonを使ってMacでPCMを鳴らしたいんです。ファイルじゃないからAppKit.NSSoundは要件にあいません。Carbon.SoundはLeopardに入ってるヤツバグあるし、使い方がよくわかりません。MacでAudioやるならAudioToolboxでしょって事で色々調べた結果、ctypes…

Pythonで英語Excise第1段

ただいま英語勉強中につき、欲しいスクリプトをPythonで書きました。第1段、リストにした単語をひたすら発音ヤツ。 使い方 administrator@CF-T4 ~ $ vi words.list administrator@CF-T4 ~ $ cat words.list | ./pronounce.py -> apple..>. -> pie..>. -> pin…

Hello Google Music Beta via iPhone(4.3.3)

It plays randomly songs of all in your Google Music Beta's library. You can listen to the music with mobile safari. Have a lot of fun! Requirements iPhone (I recommend 4.3.3 or higher.) Google Music Beta's invitation. Some agreements to Go…

Hello Amazon Cloud Player via Python

It plays randomly one song of all in your Amazon Cloud Player's library. You can listen to the music with a line typing. Have a lot of fun! Update 07.28.2011 changed sound library from pygame to pymedia. Requirements python (I recommend 2.…

Hello Google Music Beta via Python

It plays randomly one song of all in your Google Music Beta's library. You can listen to the music with a line typing. Have a lot of fun! Update 07.28.2011 changed sound library from pygame to pymedia. Requirements python (I recommend 2.6.…

PythonからGoogle Music Betaを叩く

まだ途中。とりあえずログインから情報を取得するまで。 PyAmazonCloudDriveみたいにライブラリ化したいけど、そこまでの馬力がない。。。 #!/usr/bin/env python import sys,re import urllib,urllib2,cookielib import xml.dom.minidom if len(sys.argv)!=…

PythonでExcelからデータを読み込む

Excelでの単純作業を効率化するために普通の人はVBAを使うんでしょうけども、残念ながら私はVB系がからっきしでマクロなんか書いたことがありません。そんな私でもJavascriptにはお世話になっていたので、WindowsのJScriptで「new ActiveXObject("Excel.Appl…

Python2.5と2.6以降の違い

家にあるMacがLeopardで2.5系、メインマシンがUbuntu派生のMintで2.6.系、サーバーはDebianのLennyが2.5系、Squeeze(今はこっちがStable)が2.6系、Windowsではだいたい2.6系を使ってる。聞く話によるとGAEは2.5系らしいです。と、まぁ色々な環境でコードを…

elixir やってみる

『taichino.com pythonのORMを色々試してみた』で見かけたelixirが最近心地よい。『mitszoの日記 SQLAlchemy やってみる』のまねまね、のまねまね #!/usr/bin/env python # -*- coding: utf-8 -*- import elixir from datetime import datetime, timedelta #…

PILをpy2exeするとTypeErrorが出る

こんなエラーが出る。 File "Image.pyc", line 2008, in blend TypeError: argument 1 must be ImagingCore, not ImagingCore im1(PIL.Image)とim2(Image)をImage.blendでブレンドしようとするとダメみたい。混在しててもpy2exeしなければ問題ないのに。…

ReportLabでsetFillColorRGBが反映されない

一生懸命以下のようにRGBの値をセットしても色が反映されないというところではまる。。。 canvas.setFillColorRGB(255,127,127) このへんのドキュメントをちゃんと読めということでしょうが、この色は0〜255で指定するのではなく0.0〜1.0で指定しろというこ…