三日坊主のプログラミング日誌

なんか色々書いておくところ。

Python3.6 の print関数のお話

暇つぶしにPaizaでPython をいじってた時にブチ当たった言語のバージョン問題のお話。

 元々、プログラミングはC言語から始めたもので、C言語printf関数の非直感的な所が好きになれず、Swiftに逃げ、Adaにちょっかい出したりして、今の所Pythonに落ち着いている訳ですが、Python 3.6ではver3.5よりもprint関数が改良されていて、かなり直感的になっています。

Pythonの話に移る前に、まずSwiftのprint関数のお話。

 Swiftで、print関数のダブルコーテーション(")で括った文字列の中に変数の値を埋め込むには、 \(変数名) にして一緒に記述すれば良いのは有名な話。

続きを読む

iPhone Xダメな所

iPhone X買って2,3日使ってみて全体的に良く出来た端末だと思う(処理速度が速くてポケ森が快適とか)けれど、キーボード選択すごくやり難くなった。

 

全体的に画面がデカくなってのは凄く良いけれど、その分、言語切り替え(地球マーク)までの距離が遠くて押しにくい&落としそう になる。これはよろしく無い。

f:id:Hiro2201:20171231120820p:plain

言語選択ボタンの距離(右利きだと親指がギリギリ届くか届かないか位)



あと、MaciPhoneもSiriは音声入力じゃなくてキーボード入力で使ってるのだけれど、iPhone XだとSiri画面でキーボードの言語切り替えが出来なくなってる。あまり問題は無いけれど、ちょっと違和感。

f:id:Hiro2201:20171231120827p:plain

Siriのキーボード画面(左側の地球マークが無い)

 

 

他には、簡易アクセスがデフォルトではない点。(簡易アクセスとはホームボタンをダブルタップすると画面が半分くらい下がる機能の事)

もちろん、iPhone Xでも簡易アクセスは使えるのだけれど、 設定 > 一般 > アクセシビリティ から設定しておかないと使えない。

また、以前の物理ボタンを2タップではなく、画面Dock部辺りを↓ or ↑にスライドなので、誤タッチが増えた。

f:id:Hiro2201:20171231122213g:plain

 

全体的にはiPhone 6とかでiPhoneを使ってきた人向け端末という印象もあるけれど、良く出来た良い端末だと思うので、オススメ。

iPhone X 買ったら iPhone 6とのバッテリー対決したいなぁ(誰得)と思ったのでバッテリーモニターアプリ作った( ✌︎'ω')✌︎

Swift 3
サンプルコード

import UIKit

class ViewController: UIViewController {
    @IBOutlet weak var BatteryProgress: UIProgressView! // プログレスバー
    @IBOutlet weak var BatteryView: UILabel!             // ラベル
    
    override func viewDidLoad() {
        UIDevice.current.isBatteryMonitoringEnabled = true // バッテリーのモニタリングを可能にする
        BatteryProgress.setProgress(1.0, animated: true)    // アニメーションをつける
        BatteryProgress.transform = CGAffineTransform(scaleX: 1.0, y: 2.0) //プログレスバーの長さと太さ
        let CurrentBattery : Float = UIDevice.current.batteryLevel // バッテリの値を取ってくる
        if (CurrentBattery == -1) { // モニタできないと -1 が帰ってくる
            BatteryView.text = "ERROR"
        } else { // モニタできる場合は 0.0 ~ 1.0 の間で値が帰ってくる
            BatteryView.text = "\(CurrentBattery * 100) %"
        }
        super.viewDidLoad()
    }
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
}

OpenCV & Python 3 & コマンドライン引数 で画像をリサイズするプログラム

 大学の研究室で畳み込みニューラルネットワークを使った演習を来年1月やるらしいので、そこで使う60枚の画像ファイルを用意したはいいものの、40×40の画像にしなくてはならないので、それをチマチマ縮小するのはメンドくさいと言う事で書いた( ✌︎'ω')✌︎

環境は macOS High Sierra, Python 3.6.1 , OpenCV(version 3.3.0)

#coding: utf-8

import cv2  # OpenCV読み込み
import sys  # コマンドライン引数を使う為

imageName = sys.argv                            # コマンドライン引数を変数(配列)に記録
img = cv2.imread(imageName[1])                  # 配列2番目に格納されている値から画像を読み出し

size = (40,40)                                  # リサイズするサイズ 高、幅 の順
small_image = cv2.resize(src=img,dsize=size)    # ココでリサイズ&変数に格納
resizedImageName = "small-[f:id:Hiro2201:20171225200159j:plain]" + imageName[1]      # 生成するファイルの名前の作成
cv2.imwrite(filename=resizedImageName,img=small_image) # ファイル書き出し

==================================================================

続きを読む
プライバシーポリシー お問い合わせ