周一早晨的空气里带着雨后的清冽。
林楠背着双肩包走进图书馆时,还不到九点。周末的染发剂事件像一层薄薄的雾,笼罩在心头。他需要做点实际的事情,把注意力从那些乱七八糟的猜测上挪开。
小组项目的数据挖掘模块,他主动揽了下来。
倒不是多喜欢编程。
只是觉得,和代码打交道比和人打交道简单。代码不会突然问你为什么染发,不会用探究的眼神看你,不会在你转身后低声议论。
自然科学阅览区在三楼西侧。
这里平时人少。高大的落地窗透进晨光,空气里有旧纸张和木头的味道。一排排书架沉默地立着,像时间的守卫。
林楠沿着书架慢慢走。
手指划过书脊。《数据挖掘实战》《Python机器学习》《统计学基础》……他抽了几本出来,抱在怀里。书有点沉,压得他胳膊往下坠了坠。
就在这时。
他听见了翻书的声音。
很轻。沙沙的,像树叶擦过地面。
林楠下意识地转头。
透过两排书架之间的缝隙,他看见了靠窗的那个位置。阳光斜斜地照进来,在地板上切出一块明亮的梯形。一个人坐在那里,低着头。
是陈屿。
林楠的呼吸停了半秒。
他立刻往后退了一步,躲到书架后面。心脏在胸腔里突突地跳。他不知道自己为什么要躲。明明没什么好躲的。图书馆是公共场合,谁都可以来。
可他就是不想让陈屿看见自己。
至少现在不想。
他悄悄探出一点头,从书本的缝隙间看过去。
陈屿穿了一件浅灰色的毛衣,袖口卷到手肘。他低着头,专注地看着面前摊开的那本书。手指偶尔翻动一页,动作很轻。阳光落在他侧脸上,勾勒出清晰的轮廓线。
那本书很厚。
硬壳封面,深蓝色。书脊上的字很小,林楠眯起眼睛,努力辨认。
《人类遗传学异常案例汇编》。
英文标题。
下面还有一行小字:全球罕见病例研究。
林楠的脑子嗡了一声。
所有的声音都在瞬间退去。图书馆的安静变成了一种沉重的真空,压得他耳膜发疼。他盯着那个书名,眼睛一眨不眨。
遗传学。
异常。
案例。
每个字都像钉子,一下一下敲进他的意识里。
陈屿为什么看这个?
巧合吗?
还是……
林楠不敢想下去。
他猛地收回目光,转身就走。脚步很轻,但很急。怀里抱着的书差点滑落,他用力搂紧,指甲掐进了书封里。
他穿过一排排书架,一直走到阅览区最里面。
角落的位置。光线暗一些,窗外是图书馆的后院,几棵老树的枝桠伸到窗前。这里离陈屿很远,中间隔着十几排书架,还有好几个空座位。
林楠拉开椅子坐下。
他把书放在桌上,一本一本摊开。动作机械。手指有点抖。
他深吸一口气,强迫自己看向屏幕。
电脑开机了。
蓝色的光映在脸上。
他打开编程软件,调出昨天写的代码。光标在屏幕上闪烁,等着他输入。可他盯着那些字符,却一个字也看不进去。
脑子里全是那本书。
《人类遗传学异常案例汇编》。
陈屿低头阅读的样子。
专注的。认真的。
像是在研究什么重要的课题。
林楠咬住下唇。
他拿出手机,打开浏览器。手指悬在搜索框上,犹豫了几秒,最后还是输入了那本书的名字。
回车。
页面跳转。
搜索结果出来了。那是一本专业学术著作,出版于三年前,作者是几位国际知名的遗传学专家。简介里写着:本书收录了全球范围内一百二十七个罕见遗传病例,涵盖染色体异常、基因突变、表观遗传变化等多个领域,旨在为临床医生和研究人员提供参考。
罕见病例。
遗传异常。
林楠的手指冰凉。
他关掉浏览器,把手机扣在桌上。声音有点响,旁边一个正在看书的女生抬头看了他一眼。他立刻低下头,假装整理笔记。
可心里乱成一团。
周末的对话又浮现在眼前。
“你染头发了?”
“嗯。”
“挺好看的。”
就这些。没有多问。没有探究。陈屿的态度那么自然,自然到让林楠怀疑是不是自己太敏感了。
可现在呢?
现在陈屿在看遗传学的书。
看异常案例。
这算什么?
林楠用力摇了摇头。
不要乱想。他告诉自己。陈屿是医学院的,看专业书很正常。也许他只是在准备什么课程作业,或者研究课题。跟自己一点关系都没有。
可另一个声音在脑子里小声说:真的没关系吗?
为什么偏偏是今天?
为什么偏偏在这里?
为什么偏偏是那本书?
林楠闭上眼睛。
他想起自己变身的那天。那个混乱的、恐怖的早晨。镜子里的陌生面孔。声音的变化。身体的变化。一切都像一场噩梦,可醒来后噩梦还在继续。
他查过资料。
偷偷地。在深夜,用匿名浏览器。他搜索过“突然变性”“性别转换”“不明原因的身体变化”。结果要么是科幻小说,要么是医学上无法解释的罕见病例。
罕见病例。
就像那本书里收录的那种。
林楠睁开眼睛。
他看向窗外。老树的叶子在风里轻轻晃动,影子在地上摇晃。阳光很好,可他觉得冷。
他得做点什么。
不能一直坐在这里胡思乱想。
林楠重新看向电脑屏幕。光标还在闪烁。他打起精神,开始敲代码。手指落在键盘上,发出细碎的声响。一行行字符出现在屏幕上。
if __name__ == "__main__":
import pandas as pd
from sklearn.model_selection import train_test_split
他强迫自己专注。
数据预处理。特征选择。模型训练。这些步骤他做过很多次,熟悉得像呼吸一样。可今天不一样。今天他的注意力像断了线的风筝,总是不由自主地飘走。
飘到靠窗的那个位置。
飘到那本深蓝色的书上。
飘到陈屿低垂的侧脸上。
林楠停下敲键盘的手。
他端起桌上的水杯,喝了一口。水是凉的,滑过喉咙,稍微清醒了一点。
也许该换个地方。
去别的阅览室。或者回宿舍。
可他没动。
一种奇怪的情绪抓住了他。恐惧,但不止是恐惧。还有一种近乎自虐的好奇。他想知道陈屿在看什么。想知道那本书里到底写了什么。想知道陈屿为什么会对这种东西感兴趣。
但他不敢过去。
不敢问。
只能坐在这里,隔着十几排书架,像个偷窥者一样,在脑子里构建各种可能性。
时间一点点过去。
图书馆里的人渐渐多起来。有学生抱着书进来,找到座位坐下。有管理员推着小车,把归还的书放回书架。空气里飘着细微的说话声,翻书声,咳嗽声。
林楠的代码写了一半。
他遇到了一个问题。有一个数据格式总是不对,模型训练一直报错。他查了半天资料,还是没找到原因。
烦躁。
他抓了抓头发。
新染的发丝在手指间滑过,触感柔软。他又想起周末陈屿说的话。
“挺好看的。”
当时他是什么心情?
紧张。慌乱。但也有一点点……高兴?
林楠甩甩头。
不能想这些。
他重新看向代码,决定换个思路。也许问题不在数据格式,而在特征工程的处理上。他打开另一本书,翻到特征选择那一章。
就在这时。
他听见了脚步声。
很轻。由远及近。
林楠的身体僵住了。
他没有抬头,眼睛死死盯着书页,可所有的注意力都集中在那脚步声上。一步,两步,在安静的空间里格外清晰。
脚步声停在了他旁边。
“林楠?”
是陈屿的声音。
温和的。带着一点不确定。
林楠的心脏猛地一跳。他慢慢抬起头,对上陈屿的目光。陈屿站在桌边,手里拿着那本深蓝色的书。书很厚,他单手拿着,手指扣在书脊上。
“真的是你。”陈屿笑了笑,“刚才在那边看到背影,还以为看错了。”
林楠张了张嘴,想说话,可喉咙发干。
他看见陈屿的目光扫过桌上的书。《数据挖掘实战》《Python机器学习》。然后又落回他脸上。
“在做项目?”陈屿问。
“……嗯。”林楠终于发出了声音,“数据挖掘模块。”
“挺厉害的。”陈屿说,“我编程很烂,看见代码就头疼。”
语气轻松自然。
就像普通同学之间的闲聊。
林楠的视线不受控制地飘向陈屿手里的书。深蓝色的封面在光线下泛着微光。那几个字刺眼地立在那里。
陈屿注意到了他的目光。
“哦,这个。”他把书抬了抬,“遗传学的参考书。导师推荐的,让我看看有没有适合做研究方向的案例。”
他的语气太自然了。
自然到林楠不知道该怎么接话。
“你……对遗传学感兴趣?”林楠听见自己问。声音有点飘。
“算是吧。”陈屿说,“医学院的课,总得学。而且遗传学挺有意思的,很多罕见病例,背后的机制很复杂。”
罕见病例。
林楠的手指收紧。
“比如呢?”他问。问完就后悔了。为什么要问?为什么要把话题往这上面引?
陈屿想了想。
“比如有一些染色体异常导致的疾病。或者基因突变引起的代谢障碍。还有……”他顿了顿,“一些更罕见的,比如表观遗传层面的变化,可能会导致意想不到的生理特征改变。”
表观遗传。
生理特征改变。
每一个词都像针,扎在林楠的神经上。
他努力维持着表情的平静。
“听起来……很难。”
“是挺难的。”陈屿笑了笑,“所以我得好好看书。你呢?代码写得顺利吗?”
话题转开了。
林楠松了口气,但心里那根弦还绷着。
“还行。”他说,“就是有个数据格式的问题,一直报错。”
“需要帮忙吗?”陈屿问,“虽然我不懂编程,但也许能帮你看看问题在哪。”
“不用了。”林楠立刻说,“我自己再查查资料。”
话说得太快,有点生硬。
陈屿看了他一眼,没说什么。
空气安静了几秒。
窗外有鸟飞过,影子掠过地面。
“那我不打扰你了。”陈屿说,“继续看书了。”
他转身要走。
林楠看着他背影,突然开口:“陈屿。”
陈屿停下,回头。
“周末的爬山……”林楠说,“你会去吧?”
问完就想咬舌头。这算什么问题?明明李雯的名单里已经有他了。
陈屿点点头。
“会去。你呢?”
“我也去。”
“那到时候见。”陈屿笑了笑,“对了,染的头发真的挺适合你的。”
说完,他转身走了。
脚步声渐渐远去。
林楠坐在椅子上,一动不动。
他看着陈屿走回靠窗的位置,坐下,重新翻开那本深蓝色的书。阳光照在他身上,安静而专注。
刚才的对话在脑子里回放。
每一句。每一个字。
陈屿的态度那么自然。聊遗传学的时候,聊爬山的时候,夸他头发的时候。一切都那么正常。
正常到让人不安。
林楠低下头,看向自己的手。
手指在微微发抖。
他握紧拳头,深吸一口气。不能再想了。再想下去,他会疯的。
他重新看向电脑屏幕。
光标还在闪烁。
代码还没写完。
数据挖掘的实验要做。小组项目要完成。生活还得继续。
他敲下键盘。
一个字符。又一个字符。
屏幕上的代码一行行增加。
可他的余光,总是不由自主地飘向那个靠窗的位置。
飘向那本深蓝色的书。
飘向那个正在阅读的人。
图书馆的钟敲了十下。
声音悠长,在安静的空间里回荡。
林楠知道,今天上午,他大概写不出什么像样的代码了。
但他还是坐着。
没有离开。
就像在等待什么。
又像是在害怕什么。
而窗外,阳光正好。
树影摇晃。
一切看起来都那么平静。