トップ  > メモ一覧  > カテゴリ「文法・基本」の絞り込み結果 : 5件

5件中 1 〜 5 表示  1 

No.5366 python 関数

* 先頭を大文字: str.capitalize()
* 三項演算子: x = "OK" if n == 10 else "NG"

## PHP関数との対応 ##
* sprintf: '{} {}'.format('hoge', 'fuga') #"hoge fuga"
*  in_array: if item in array:
* trim('/'): str.strip('/')
* explode(','): str.split(',')
* implode(','): ','.join(['aaa', 'bbb', 'ccc'])
* array_shift: myList.pop(0)
* str_replace: str.replace(search, replaced)
* 改行削除:
re.sub('[\r\n]+$', '', line)

### isset()
### list の index
try:
    var = hoge[2]
except IndexError:
    var = 'default'

### dict の key
var = hoge.get('fuga', 'default')


### ユニークな文字列
````
import uuid
secure_unique_id = uuid.uuid4().hex
````
### ver_dump
````
#!!!!!!!!!!!!!!!!
from pprint import pprint
pprint()
#!!!!!!!!!!!!!!!!
````

## 文字列 ##
### ヒアドキュメント
string = '''
This is a pen.
I'm from Tokyo.
'''.strip()

## 配列操作 ##
### 配列結合
list = ["A", "B", "C"]
list.extend(["D", "E"])
print list      # ["A", "B", "C", "D", "E"]

### dict 配列で特定のキーの値の要素を探す
```
>>> dicts = [
     { "name": "Tom", "age": 10 },
     { "name": "Mark", "age": 5 },
     { "name": "Pam", "age": 7 },
     { "name": "Dick", "age": 12 }
 ]
>>> next(item for item in dicts if item["name"] == "Pam")
{'age': 7, 'name': 'Pam'}
```

## ファイル ##
### 読み取り(全部)
with open(file_path) as f:
    s = f.read()

### 1行ずつ読み取り
with open(path) as f:
    for s_line in f:
        print(s_line)

### 確認
- あるかどうか?: os.path.exists(path)
- 最終更新日時: os.stat(file_path).st_mtime

## json ##
* 文字列->dict
    + json.loads(json_str)
* dict->文字列
    + json.dumps(ver_dict)

## デコレータ ##
### 基本形
~~~
# デコレータ定義
# 関数の実行前後に出力
def test(func):
    def new_func(*args, **kwargs):
        print('start')
        result = func(*args, **kwargs)
        print('end')
        return result
    return new_func

# 関数定義
@test
def square(a):
    print(a * a)

# 実行
square(3)

## loop ##
### 配列を index 付きで
for index, item in enumerate(list):

### dict
for k, v in d.items():
    print(k, v)


## datetime ##
- 文字列からdt
-- dt = datetime.strptime('20190318', '%Y%m%d')
- timestamp から datetime
-- localtime: datetime.fromtimestamp(timestamp)

### あと何日
```
dt_str = '20190318'
dt = datetime.strptime(dt_str, '%Y%m%d')
today = datetime.now()
days = (dt-today).days
```

### 時間比較
````
base_dt = datetime.fromtimestamp(timestamp)
expire = timedelta(minutes=30)
expire_dt = base_dt + expire
now_dt = datetime.now()
if expire_dt > now_dt:
````

## コマンドライン ##
### 引数
$ python3 sys_argv_test.py a 100
sys.argv         :  ['sys_argv_test.py', 'a', '100']
type(sys.argv)   :  <class 'list'>
len(sys.argv)    :  3

sys.argv[0]      :  sys_argv_test.py
sys.argv[1]      :  a
sys.argv[2]      :  100 
更新:2019/03/22 22:18 カテゴリ: Python  > 文法・基本 ▲トップ

No.5377 Python ポリシー

コマンドで確認できる

$ python
Python 3.6.4 (default, Jan 21 2018, 22:59:58)
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.37)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import this
The Zen of Python, by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!
>>>

解説↓
https://qiita.com/IshitaTakeshi/items/e4145921c8dbf7ba57ef

引用元

更新:2018/04/17 19:59 カテゴリ: Python  > 文法・基本 ▲トップ

No.5373 辞書型からランダムに取り出す

`````
import random

dict = {
    'duck': 'quack',
    'rooster': 'cock-a-doodle-doo',
    'cuckoo': 'cuckoo',
    'crow': 'caw',
    'dove': 'coo',
    'chick': 'cheep',
    'owl': 'hoot',
}
key, value = random.choice(list(dict.items()))
`````

引用元

更新:2018/04/11 20:37 カテゴリ: Python  > 文法・基本 ▲トップ

No.5365 python 雑メモ

* None: 空の object
* pass: 抜ける(return, break)
* パッケージ: __init__.pyを含むディレクトリ
更新:2018/03/24 18:07 カテゴリ: Python  > 文法・基本 ▲トップ

No.5364 import: モジュールの読み込み

* import: モジュールの読み込み
* import as: モジュール名に別名をつける
* from import: モジュール名を省略する(classで直接呼ぶ)

~~~
import モジュール名 as 別名
~~~

~~~
from モジュール名 import クラス名(もしくは関数名や変数名)
~~~

引用元

更新:2018/03/24 13:34 カテゴリ: Python  > 文法・基本 ▲トップ
5件中 1 〜 5 表示  1 

Python

フロントエンド開発

Linux

web開発

svn・git

ソース・開発

プロマネ

マネタイズ

FuelPHP

HTML・CSS

JavaScript

プレゼン

Alexa

webサービス運用

webサービス

Mac

サーバ管理

MySQL

PHP

ツール, ライブラリ

ビジネス

テンプレート

負荷・チューニング

Windows

メール

メール・手紙文例

CodeIgniter

オブジェクト指向

UI・フロントエンド

cloud

マークアップ・テキスト

Flash

デザイン

DBその他

Ruby

PostgreSQL

ユーティリティ・ソフト

Firefox

ハードウェア

Google

symfony

OpenPNE全般

OpenPNE2

Hack(賢コツ)

OpenPNE3

リンク

個人開発

その他

未確認

KVS

ubuntu

Android

負荷試験

オープンソース

社会

便利ツール

マネー

Twig

食品宅配

WEB設計

オーディオ

一般常識

アプリ開発

サイトマップ

うずら技術ブログ

たませんSNS

rss2.0