看代碼吧,這類函數支持標量和張量作爲參數,輸出結果是張量:
import tensorflow as tf
import numpy as np
sess=tf.Session()
print("tf.string_to_number(string_tensor,out_type),string_tensor也可以是標量\n需要注意, 默認轉換爲float,如果指定 out_type,那麼字符串表面看起來\n的數值應該和out_type指定的類型一致")
print("這個是標量字符串作爲參數:",sess.run(tf.string_to_number("123")))
T=tf.Variable("123")
sess.run(tf.global_variables_initializer())
print("這個是dtype爲字符串的張量作爲參數:",sess.run(tf.string_to_number(T)))
print("------------------------")
print("下面測試to_double,to_float,ro_int32,to_int64,測試數據d=0.1314926,f=0.13,i32=12,i64=65,以及他們對應的張量 ")
d=0.1314926
f=0.13
i32=12
i64=65
vd=tf.Variable(d)
vf=tf.Variable(f)
vi32=tf.Variable(i32)
vi64=tf.Variable(i64)
sess.run(tf.global_variables_initializer())
def to_xxx(fun_name,x):
return sess.run(eval(fun_name)(x))
funcs=["tf.to_double","tf.to_float","tf.to_int32","tf.to_int64"]
parms=[d,f,i32,i64,vd,vf,vi32,vi64]
for func in funcs:
for parm in parms:
print("當前變量值:",parm)
print("當前函數:",func)
print("運算結果:",to_xxx(func,parm))
print("-----------------------------")