Powered By 画RSS

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

python ljust / center / rjust

■Python ljust / center / rjust
文字列に対して空白を追加する。

3.6.1 文字列メソッド
http://www.python.jp/doc/release/lib/string-methods.html

text1 = "Hello"
text2 = "python"
text3 = "World"

print "left",text1.ljust(10),"right"
print "left",text2.center(10),"right"
print "left",text3.rjust(10),"right"

print "left",text1.ljust(3),"right"
print "left",text2.center(3),"right"
print "left",text3.rjust(3),"right"

【実行結果】
left Hello      right
left   python   right
left      World right
left Hello right
left python right
left World right

>widthlen(s) よりも小さい場合、元の文字列が返されます。
下のprint文の実行結果が、空白が追加されていない理由。
ljust / center / rjust 全てにおいてこれが適用される。

スポンサーサイト

wxpython 読み直し

wxpythonインストール
http://kbdpage.blog82.fc2.com/category2-1.html

この記事のサンプルコードを再度見直してみた。
動かなかったとぬかしてるコレ。

import wx

class MyApp(wx.App):
    def Oninit(self):
        Frm = wx.Frame(None,-1,"test")
        Frm.Show()
        Btn = wx.Button(Frm,-1,"push")
        return 1

app = MyApp()
app.MainLoop()



-よくよく考えて見直したみたところ・・・-
         ____
       /      \
      /  ─    ─\
    /    (●)  (●) \   ・・・・コレ "Oninit" じゃなくて "OnInit"だろ・・・・
    |       (__人__)    | ________
     \      ` ⌒´   ,/ .| |          |
    ノ           \ | |          | 
  /´                 | |          |
 |    l                | |          |
 ヽ    -一ー_~、⌒)^),-、   | |_________|
  ヽ ____,ノγ⌒ヽ)ニニ- ̄   | |  |

正しくは・・・

import wx

class MyApp(wx.App):
    def OnInit(self):
        Frm = wx.Frame(None,-1,"test")
        Frm.Show(True)
        Btn = wx.Button(Frm,-1,"push")
        return True
app = MyApp()
app.MainLoop()


だよ!
タイプミスじゃねぇか・・・。
恥ずかしい記事を投稿したもんだ。

修正したいところだけど、
追記だけ行って、タイプミスコードは戒めとして残しておこう・・・。

paramiko SSHで接続

■PythonでSSH
前回の記事のテストコード。
改めてみたら、もうちょい親切でも良いだろと思った。
という訳で、2回目。

import ssh

print "SSH START"

ipadr = raw_input('IP Address:')
usernm = raw_input('user name:')
passwd = raw_input('password:')

s = ssh.Connection(ipadr,
                   username=usernm,
                   password=passwd)

command = raw_input('command:')
cmd_result = s.execute(command)

s.close()

for rlt in cmd_result:
    print rlt

コマンドの実行結果を取得して、for文で画面に出力。
 image

こんな感じになる。(パスワードは、安直すぎるワードなので、隠しとこう)

前回も今回も WindowsからLinuxへのSSHだから
今度はLinuxにparamiko入れてSSHやって見ようか。

Linuxは、dictフォルダにssh.pyを入れて楽に使う方法ができるのかな。

paramiko インストール

■PythonでSSH
Windowsでparamikoを使う。
以下インストール手順。

paramiko
http://www.lag.net/paramiko/
ここからとりあえず、zipファイルを落として適当なとこに解凍。

さっそくインストールしたいとこだけど、
使うにはコイツ pycriprt も必要。入れないで使ったらエラーがでたよ・・・。
http://www.voidspace.org.uk/python/modules.shtml#pycrypto
ここにexeが置いてあるので、Pythonのバージョン合った物を落としてポチってけばおk。

■paramikoのインストールも簡単。
1. cdコマンドで、解凍したフォルダに移動。
2.  python setup.py build
3.  python setup.py install

これで完了。setuptoolsを使えば、こんなことをするまでもないみたいだが。

■実際に使用してみる

以下のエントリを参考にして、試してみれば、問題なくできるはず。
Python で SSH は paramiko + ssh で楽勝
http://plaza.rakutenco.jp/kugutsushi/diary/200806190001/

ssh.pyは以下のパスに配置すれば良し。
\Python26\Lib\site-packages

そして、以下のようなコードを書いて、完了。

import ssh

print "SSH  START"

ipadr = raw_input('IP Address:')
usernm = raw_input('user name:')
passwd = raw_input('password:')

s = ssh.Connection(ipadr,
                   username=usernm,
                   password=passwd)
s.execute('ls  > lsfile')
s.close()

put ・・・ ファイルを送信
get ・・・ ファイルを受信
execute ・・・ コマンドを実行

上記のコードは、Linuxサーバに接続して、コマンドを実行しているだけ。
簡単。簡単。

#Windows Live Writer 便利だなぁ

Eclipse 補完機能

Ctrl+スペースキー

で、コード補完機能が使える。

当たり前の知識なんだろうけど、普通に知らなかった。

VisualStudioだったら、変数名を打ってる途中で、候補がでて補完・・・って流れだったから
Eclipseは、出てこなかったから、「あぁないんだな」って勝手に完結してた。

改めて、「実はできるんじゃね」と考えて「Eclipse 変数 補完」でぐぐったら、あっさり解決。
なるほどー。ひと手間必要なのね。

これで「(分かりやすい)長い変数名つけるメンドクセ」ってことから開放される。
Eclipseについて無知すぎたなぁー。


参考までにぐぐったら出てきたサイト
【連載 】Eclipseの有効活用術
http://www.stackasterisk.jp/tech/java/eclipseTips01_03.jsp#2_1

Windows live Writerを使用してみる

設定方法はこちら

まだ全然使用していないが、かなり便利そうだ。

画像も問題なく貼れる。

a57b24e6

これは管理ページより、便利かも分からんね。
上記の設定方法が書いてあるページに欠点として「カテゴリが未分類になる」とあるが
ツールバー ?> 編集 ?> カテゴリ から設定できそうな感じ。

-追記-
カテゴリは設定できなかった・・・。
試しにカテゴリ「便利サイト」で投稿してみたところ、「未分類」になる始末。
まぁ仕様がない。ここはあきらめよう。


[気になった点]
普通にEnterキーで改行すると、1行余分に改行される。
1行だけ改行したい場合は、Shiftキー+Enterキーで。
Windows live writer の設定で変えられるのかなって思ったけど、なさそうだ。

ま、これも慣れれば問題ないだろう。

[SQL Server]テーブル / データベース 存在確認

■SQL Server
テーブルが存在している場合、削除を行う。

もし、tbl_memomemoが存在していた場合、削除を行う...とすると以下のように書く

if exists (SELECT * FROM [dbo].[sysobjects] WHERE id = object_id(N'[dbo].[tbl_memomemo]')
AND OBJECTPROPERTY(id, N'IsUserTable') = 1)
DROP TABLE [dbo].[tbl_memomemo]


---2011/02/27追記
データベース一覧を取得
select * from sysdatabases

name列にDB名が取得されるから、こんな感じでデータベースの存在確認をすればいいか
select name from sysdatabases where name = ''



[Python]引数を取得する

■Python
引数を取得する

---------------------------------

# -*- coding: utf-8 -*-
import sys

if len(sys.argv) != 2:
print u'引数は2つ指定してください'
quit()

print sys.argv
print sys.argv[1]

---------------------------------

quit()はプログラムの終了をする。
引数が2つじゃなかったら、終了する。

と・・・コードを書くのは、簡単だけど
Eclipseで引数渡してデバッグするなら、少し設定が必要。


■Eclipseで引数を渡す方法
http://www.csg.is.titech.ac.jp/~kourai/lecture/eclipse/args.html

記載されているのはJavaだけど、ほぼ一緒。
最初の手順の「Run....」を選択のとこが「Run Configuretions...」が違うくらい。

これで引数渡して実行できる訳だけど、Eclipseでもっと手軽に引数渡して、デバッグできないものか・・・。
探せばあるんかな。
■スポンサードリンク
■プロフィール

ベタログ

管理人 : ベタログ (Twitterアカウント

思い立ったら、ジャンルを気にせず記事にする。それが自由というものだ。
そんな管理方針。
主に取り扱ってる事:オンラインゲーム(SDGO/Travian/ロードオブナイツ)、プログラミングメモ、ネット小説/書籍の感想/観葉植物など。

■まとめ記事
■カテゴリ
■最新記事
■PICKUP

個人的に押しているモノ


魚里高校ダンジョン部! 藻女神様と行く迷宮甲子園
魚里高校ダンジョン部! 藻女神様と行く迷宮甲子園
■感想記事
これぞ青春エンタメ小説。熱いですよ!

オーバーロード1 不死者の王
オーバーロード1 不死者の王
■感想記事
最強軍団が異世界を蹂躙するファンタジー。Web版も読めますが、凄まじい加筆がされているため、Web版読者も楽しめます。
■お勧め品
■最新コメント
■月別アーカイブ
検索フォーム
リンク
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。