文字列と数値の取り扱いでハマったこと

ハマったことのメモ。
まずは、これをご覧ください。

8<45でTrueが返り、'8'<'45'でFalseが返る。なぜ?

理由は保留として、とりあえず['8','45']を[8,45]にしたい。

A = ['8','45']
for a in A:
    a = float(a) 
print A

で、できない。

代入をミスってることに気づいた。

#! usr/bin/env python
# -*- coding: utf-8 -*-

#str_to_int.py

A=['8','45']
print A
i=0
for a in A:
    A[i]=float(a)
    i+=1
print A

でOK。