2018年7月22日日曜日

python 文字列 (python vs JavaScript)

pyhtonの文字列操作


まとめ(python vs JavaScript


・型変換 似ているね

パイソン
  int(), str() 

JavaScript
 Number(), String()



※以下は順番に パイソン、JavaScript

・変換は同じで、replaceでいきましょ!

・長さは、len()関数、length(プロパティか?)

・空白削除は、strip, trimではなくreplaceがよさげ(trimはブラウザ未対応あり)

・部分文字列は、スライスでいこう。書き方がちがうよ

・文字列検索は、find, indexOf ( Ofの最初は大文字だよ,
               無い場合は、-1をどちらも返却しますよ )


※型判定 type()関数,  typeof 変数名
 長さ取得みたい〜



■長さは、len

>>> a="koba "
>>> a
'koba '
>>>
>>> len(a)
5



■部分文字列はスライスでやるよ

開始インデックス:終了インデックスを指定します

>>> a
'koba '
>>> a[1:3]
'ob'



先頭から2文字
>>> a
'koba ' ※わかりやすくスペースを全角にしました
>>> a[:2]
'ko'

お尻から2文字
>>> a[-2:]
'a ' ※わかりやすくスペースを全角にしました



■検索(find)


>>> a="kobayashi yamada"
>>> a
'kobayashi yamada'

>>> a.find("koba")
0
>>> a.find("y")
4
>>> a.find("yo")
-1
>>> a.find("yamada")
10
>>> a.find("yama")
10

>>> a.find("yamada2")
-1

■置換(replace)

>>> a
'koba '
>>> a.replace("k","K")
'Koba '


■空白削除(タブ文字、改行(\r,\n))
   
>>> a
'koba '


>>> b= a.strip()
>>> b
'koba'



■データ型の判定

>>> intData = 12
>>> strData = "34"

>>> type( intData)
<type 'int'>
>>> type( strData )
<type 'str'>

>>> str( intData )
'12'
>>> int( strData )
34
>>>



最後に文字列結合は
プラス記号で結合できますよ

※パイソン、JavaScriptでは、ダブル、シングルクォートどちらも同じ扱いらしい
(エスケープ処理に違いがない)






JavaScriptもついでに解説


■長さ(プロパティなのか?)

var str = 'hello';
console.log( str.length );

> 5


■部分文字列(slice)
スライスでいくと、パイソンと同じ感じになりますね〜

var value = 'koba';
data = value.slice( 0,2 );
console.log( data );

data = value.slice( -2 );
console.log( data );

data = value.slice( 1,3 );
console.log( data );

> "ko"
> "ba"
> "ob"


■検索 (indexOf)
var value = 'koba yama';
data = value.indexOf("ba ");
console.log( data );

data = value.indexOf("y");
console.log( data );

data = value.indexOf("yama2");
console.log( data );

> 2
> 5
> -1


■置換(replace)

var value = 'koba '; 
data = value.replace("k", "K"); 
console.log( data ); 

> "Koba "

■スペースを取り除く

trimがあるが、ブラウザ未対応があるので、以下を参考に

var value = 'koba';
data = value.replace(/^\s+|\s+$/g,'');   (※正規表現でこのままで利用)
console.log( data );

> "koba"


■型変換
var value = 123
data = String(value);
console.log( typeof data );
console.log( data );

var value = '123';
data = Number(value);
console.log( typeof data );
console.log( data );

> "string"
> "123"

> "number"
> 123


※データ型の判定は、 typeof




おまけのパイソン
■文字列の繰り返し

>>> print "*" * 50
**************************************************
>>> a="koba "
>>> print a*3
koba koba koba 

※デバックで画面表示に使えるかもね

0 件のコメント:

コメントを投稿