俩人同样写代码,我拿七千他咋一万八...

择城记

刚毕业时,同学们都会面临着同样的抉择,到底是去一线城市打拼,还是留在二三线城市工作。

 

对于IT行业的毕业生而言,一线城市意味着更多的选择,更大的挑战,当然也有更高的薪资。而二三线城市则相对安逸,节奏缓慢。当时我有很多同学都选择了去一线城市发展,多年之后,他们中的大多数还是回来了,当然也有一些人干的风生水起,年薪百万。

 

以目前情况而言,对于刚毕业的学生,我的看法是去一线城市相对更有优势一些,毕竟对于年轻人,一线更利于提升眼界,利于后续发展。

 

但选择一线城市还是二三线,其实并无对错,关键在于你知道自己想要的是什么。如果你内心真的渴望拼搏,我想一线的拥挤雾霾压力房子户口,对你来说算不了什么;如果你更注重生活本身的品质,那在二三线城市就更加适合,这和退缩没有任何关系,只是不同的选择。

 

关于一线或者三线,大家有什么看法呢?欢迎留言分享!

本文原创公众号:不会笑青年,授权转载请联系微信(laughyouth369),授权后,请在原创发表48小时后再转载。

推荐阅读

每个程序员都是从菜鸟开始成长起来的,没有人生下来就是程序员高手。菜鸟编程大本营,专注于分享趣味的编程技巧,不限于Java, Python ,Go, Javascript等语言,让菜鸟爱上编程,进阶成为高手。

菜鸟编程大本营,从菜鸟进阶成高手
点这里,获取新手福利
### Python代码功能详解 #### 第一行代码 `_, _, rewards, next_states = env.step(action)` 这行代码调用了环境对象 `env` 的方法 `step` 并传入了参数 `action`。这个方法通常用于执行一个动作并返回四个值:`observation`, `reward`, `done`, `info`。这里只关心第三个和第四个值,即奖励 `rewards` 和下一个状态 `next_states`,而前两个值被丢弃(用下划线 `_` 表示)。这种方法在Python中被称为解包赋值,允许一次性从函数返回的元组中提取多个值[^1]。 对于有C或Java背景的来说,这类似于调用一个函数并获取多个输出参数。不同之处在于,在Python中,函数可以通过元组直接返回多个值,而在C或Java中则需要通过指针或者使用类/结构体来实现类似的功能。 #### 第二行代码 `td_values = list(map(lambda x, y: x + env.gamma * y, rewards, next_values))` 这行代码利用了Python的高阶函数特性,具体来说是 `map` 函数和 `lambda` 表达式。它遍历两个列表 `rewards` 和 `next_values` 中的对应元素,并对每一对元素应用一个匿名函数 `(x, y) => x + env.gamma * y`,其中 `env.gamma` 是一个折扣因子,通常用来减少未来奖励的重要性。 这个过程可以看作是对每个时间步的即时奖励 `x` 加上对未来奖励的估计 `y` 乘以折扣因子 `env.gamma`,从而计算出TD(Temporal Difference)误差值。这种操作在强化学习算法中非常常见,尤其是在Q-learning等算法中用于更新价值函数[^2]。 如果用Java或C语言来表达同样的逻辑,可能需要编循环结构来迭代这两个数组中的每一个元素,并手动应用上述公式。例如,在Java中可能会这样: ```java double gamma = env.getGamma(); List<Double> tdValues = new ArrayList<>(); for (int i = 0; i < rewards.size(); i++) { double reward = rewards.get(i); double nextValue = nextValues.get(i); tdValues.add(reward + gamma * nextValue); } ``` 而在C语言中,则可能涉及更多的内存管理和类型转换工作,但基本思路是一致的:遍历两个数组,对每个位置上的元素进行相同的数学运算,并存储结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值