关于String s="1.0" 转为INT

本文介绍了一种将字符串类型的数值转换为整数的方法。首先将字符串转换为双精度浮点数,然后使用Math.ceil()函数进行向上取整,最后转换为整型变量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

String s="1.0";

当需要存入INT类型时

需要将其转为DOUBLE在调用MATH.CEIL

Double f = Double.valueOf(s);

Int a = (int)Math.ceil(f);

def generate_text(model, start_string, max_len=1000, temperature=1.0, stream=True): input_eval = torch.Tensor([char2idx[char] for char in start_string]).to(dtype=torch.int64, device=device).reshape(1, -1) #bacth_size=1, seq_len长度是多少都可以 (1,5) hidden = None text_generated = [] #用来保存生成的文本 model.eval() pbar = tqdm(range(max_len)) # 进度条 print(start_string, end="") # no_grad是一个上下文管理器,用于指定在其中的代码块中不需要计算梯度。在这个区域内,不会记录梯度信息,用于在生成文本时不影响模型权重。 with torch.no_grad(): for i in pbar:#控制进度条 logits, hidden = model(input_eval, hidden=hidden) # 温度采样,较高的温度会增加预测结果的多样性,较低的温度则更加保守。 #取-1的目的是只要最后,拼到原有的输入上 logits = logits[0, -1, :] / temperature #logits变为1维的 # using multinomial to sampling probs = F.softmax(logits, dim=-1) #算为概率分布 idx = torch.multinomial(probs, 1).item() #从概率分布中抽取一个样本,取概率较大的那些 input_eval = torch.Tensor([idx]).to(dtype=torch.int64, device=device).reshape(1, -1) #把idx转为tensor text_generated.append(idx) if stream: print(idx2char[idx], end="", flush=True) return "".join([idx2char[i] for i in text_generated]) # load checkpoints model.load_state_dict(torch.load("checkpoints/text_generation/best.ckpt", weights_only=True,map_location="cpu")) start_string = "All: " #这里就是开头,什么都可以 res = generate_text(model, start_string, max_len=1000, temperature=0.5, stream=True)这段代码有什么用
03-11
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值