全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 3897|回复: 46

python面试题,mjj有多少人能答对

[复制链接]
发表于 2021-12-24 02:32:02 | 显示全部楼层 |阅读模式
题目:
将“873,282|8” 和“1731,1010” 中的“873” “282” “1731” “1010” 分别提取出来。

提取两个字符串必须用同一段代码完成。

这是我今天遇到的面试题,有多少mjj能写出来呀
发表于 2021-12-24 02:47:23 来自手机 | 显示全部楼层
s.replace("|8","").split(",")

点评

点赞,不过替换用得少,喜欢正则。  发表于 2021-12-25 16:21
只要思维不滑坡,方法总比困难多  发表于 2021-12-24 09:11
直接替换可太舒服了  发表于 2021-12-24 08:21
看来个是老油条了。 此处是褒义。  发表于 2021-12-24 02:48
发表于 2021-12-24 09:17:25 | 显示全部楼层
原本看大家天天都是吹牛币,没想到正正要用技术的时候 发现吹牛币的只有我。。。。。。。

点评

你不是一个人,还有我  发表于 2021-12-24 10:24
发表于 2021-12-24 03:39:09 | 显示全部楼层
codeimg-推特-profile-photo.jpeg (16.4 KB, 下载次数: 4)

点评

你适合脑筋急转弯  发表于 2021-12-25 13:56
发表于 2021-12-24 10:48:27 | 显示全部楼层
本帖最后由 HOH 于 2021-12-24 10:56 编辑

既然是指定这两个数组那办法还不简单吗?先割掉|再割掉,就完事了,这有什么难度莫名其妙的

sb.jpg (11.18 KB, 下载次数: 0)
不知道py怎么写,应该都差不多,大概就这意思
发表于 2021-12-24 03:21:35 | 显示全部楼层
不会python
看我bash:
cat input|sed -e 's/|.*//'|awk -F ',' '{print $1,$2}'
发表于 2021-12-24 21:51:56 | 显示全部楼层
image 发表于 2021-12-24 06:19
因为其他的都在抖机灵 只适用于楼主给的俩例子 给别的数据 跑起来直接就崩了, 面试你肯定不能这么写的。
...

其实我就是对lz这种题目表达一下不屑,不给数据结构定义、只给俩例子,那就是让别人猜结构。反正都是猜,那当然怎么简单怎么来喽。

比如说凭什么舍弃"|8"?是因为竖线后面都舍弃?是因为没有配成对?是因为8小于某个阈值?是因为只有一个字符太短?还是单纯因为看"|8"不顺眼?我猜就是看它不顺眼,所以直接replace掉。
又比如,lz并没有说提取的必须是数字,万一给来个"Hello,world|8",要提取"Hello","world"吗?退一步说,就算是数字,也不一定是十进制,比如来个0x8F;就算是十进制,你还得考虑负数、小数、科学记数法等等,比如来个-1.2E+9。

这类坑爹事我遇到过不止一次了,所以对于字符串,要么提供数据定义,不然我不会去猜测。

点评

你确实是懂的,面试官就是要这样的答案,让面试者自己学会思考 举一反三。  发表于 2021-12-27 17:12
发表于 2021-12-24 07:47:10 | 显示全部楼层
可以吗
发表于 2021-12-24 03:25:24 | 显示全部楼层
本帖最后由 image 于 2021-12-24 03:27 编辑
  1. res = []
  2. o = ''

  3. for i,v in enumerate(str):
  4.     if v.isnumeric():
  5.         o += v
  6.     else:
  7.         res.append(o)
  8.         if v == ',':
  9.             o = ''
  10.         else:
  11.             break

  12.     if i == len(str) - 1:
  13.         res.append(o)

  14. print (res)
复制代码
发表于 2021-12-24 02:34:26 来自手机 | 显示全部楼层
这…一个正则就搞定了吧
发表于 2021-12-24 02:57:06 来自手机 | 显示全部楼层
正则就行了
发表于 2021-12-24 02:59:11 来自手机 | 显示全部楼层
判断数字个数,奇数就减1,偶数不变,然后除2呗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-11-24 07:23 , Processed in 0.093076 second(s), 19 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表