城市與狗
結構與主要情節

小說分成第1部（8章）、第2部（8章）和尾聲1章共17章，幾條主線由「美洲豹」、「奴隸」（里卡多·阿拉納的外號）、「詩人」（阿爾貝托·費爾南德斯的外號）、「博阿」4個人物貫串，幾乎每個章節都安排許多「美洲豹」和「博阿」的內心獨白，這2條線（「美洲豹」的獨白1條，「博阿」的獨白1條）用意識流讓讀者看到許多故事，「美洲豹」的獨白從第1部第3章1直延伸到第2部快結束，這條線是他內心對個人成長過程的回憶，可以獨立切割來看，這部分讓讀者更多認識進軍校前的「美洲豹」，「博阿」的獨白則伴隨著軍校的生活前進，處在進行式與過去式交替的狀態，讓讀者跟著「博阿」的眼睛和內心活動看到很多軍校的風風雨雨和人物事態的變遷。另外1條很重要的線由1個比較超然的部分全知觀點敘述者掌控，以「奴隸」和「詩人」的成長經歷、兄弟情誼及與校外女孩子特萊莎間發生的故事為主軸，這許多條線交織成1張大網，網中又有貫穿全書的1條軸線，就是軍校發生的幾個重大事件。
第1部的主要情節：5年1班在還是軍校新生（祕魯軍中常用公狗perro貶稱新兵，中譯作狗崽子或狗東西，本書題名後半的perros是複數形，los是陽性複數名詞的定冠詞，單數是el perro，都是軍校資深學員對新進學員的蔑稱，主要人物「博阿」還養了隻母狗「瑪爾巴貝阿達」la perra Malpapeada，題名前半的城市la ciudad特指秘魯首都利馬，另，趙德明的漢譯本用1個源於日本語的詞“士官生”來對應西班牙語單詞cadete，日本語的士官等於臺灣的軍官，台灣的士官等於日本語的下士官，士官生1詞在漢語跟日本語的意思是相同的，長得很像英語單詞cadet的西班牙語單詞cadete是軍校學員或軍校生的意思，趙德明後期的譯作已多半改譯軍校學員）時遭到高年級名為「洗禮」（el bautizo）的學長制虐待，勇猛的「美洲豹」獨自力抗學長，成為惟1沒受到「洗禮」的傳奇人物，並領導全班32人組成「團體」，展開1連串報復行動，被帶班教官甘博亞中尉發現後，全班的大團體瓦解，「美洲豹」、「博阿」、「山裡人（意思是住在山線地區的人）」「卡瓦」、「魯羅斯」4人組成「小團體」，進行報復高年級、欺負新生的暴力活動和偷大考試題賣給同學、偷竊學員財物變賣、賣酒、賣煙、聚賭等地下經濟活動，此外還有反抗校方威權管理的行為：羞辱和惡整女性化的法語教師等，這部分的高潮是國際性慶典上的大起鬨。
第1部的著墨最多的軍校重大事件是「山裡人」「卡瓦」由小團體推派去教務處偷化學考試的題目，得手後不慎弄破玻璃留下證據，當晚，外號「奴隸」的里卡多·阿拉納（外號的起源是他在與「美洲豹」偶然的肢體碰撞中，面對「美洲豹」的痛毆，不敢辯解也不敢還手，甚至不敢逃走，只顫抖著跪在地上求饒，美洲豹說他簡直是奴隸，這是班上發生的第1次打架）替「美洲豹」站崗放哨（站哨），和外號「詩人」的阿爾貝托·費爾南德斯（他編寫色情小說和代寫情書賣錢買菸抽而產生這個外號）同時段，「詩人」對「奴隸」鼓勵有加，又幫他解決困難（「奴隸」的軍裝被同學偷走或剪破，「詩人」帶著「奴隸」去偷了1套完整的），兩人從此有了交情，不久舉行化學大考，功課較好的「奴隸」想幫助沒買到考題的「詩人」而傳紙條給他，被監考的甘博亞中尉發現紙條，「奴隸」出於膽怯承認作弊而受到禁足（禁假；扣假，周末不准外出）處分。
「奴隸」暗戀鄰居少女特萊莎，託「詩人」傳情，「詩人」卻藉機與特萊莎展開交往，不久考題外流（隨著破碎的窗戶玻璃）事發，軍校高層震怒，下令沒查出元兇以前，考題失竊當晚站夜哨的兵（夜間哨兵）全體禁足，「奴隸」懸念想象中的情人卻不能相會，焦慮中失去理智，向負責管理全年級的上尉告發考題是卡瓦偷的，禁足解除，「奴隸」得以外出，「卡瓦」被關進禁閉室等候軍官會議發落（最后被剝奪軍階開除出校，但沒有牽連同夥），吃醋（同時害怕橫刀奪愛被發現）的「詩人」冒著被開除的風險從軍校翻牆出去，到特萊莎家中表白。不久軍校舉行大規模實彈演習，「奴隸」頭部中彈，被送去急救，第1部在這裡結束。
第2部的開展是「奴隸」接受救治，軍方將他嚴密隔離，連他的父母都不能探視，更別說是很關心「奴隸」的「詩人」，「詩人」遇到「奴隸」的爸爸，才知道「奴隸」根本沒機會向特萊莎告白，不久「奴隸」手術失敗死掉，軍方以「奴隸」誤扣步槍扳機誤傷自己結案，「詩人」非常悲傷，直覺「美洲豹」是殺害「奴隸」的兇手，向甘博亞中尉告發「美洲豹」和「小團體」的行為，甘博亞中尉將「美洲豹」和「詩人」與同學隔離，展開大調查，在宿舍地毯式搜索，查出燒酒、菸、開鎖工具、賭具，嚴厲質問「美洲豹」為什麼殺死「奴隸」和搞地下活動，「美洲豹」堅不承認殺人，其他方面則辯稱全體同學都是共犯結構的1部分（只有「奴隸」沒有買過考卷），還與軍官爆發小規模肢體衝突。
「詩人」和「美洲豹」被關在同1小間，「美洲豹」本想託「詩人」傳訊給死黨，「詩人」向「美洲豹」攤牌，質問「美洲豹」為什麼迫害和殺死「奴隸」，說出就是自己告發「美洲豹」，於是2人鬥毆，另方面，甘博亞將種種橫逆寫成報告，上級不願事情鬧大，極力壓制，上校校長也在軍官會議接見「詩人」，說他所有的指控都沒有證據，並以「詩人」以前編寫的色情小說要脅，要是再提這件事就開除他。
2人獲釋回宿舍後，班長阿羅斯畢德Arróspide指控「美洲豹」出賣全班，是soplón（奸細；告密者），「美洲豹」只回以輕蔑和不屑，只有「博阿」挺身給「美洲豹」出頭，演變為班上其他同學都起來反對「美洲豹」，響應班長帶頭的起鬨，在「博阿」、班長、「美洲豹」3人的肢體衝突中，其他同學1擁而上痛毆「美洲豹」和「博阿」，從此，「美洲豹」就都不跟大家來往，也分不清是大家孤立他還是他冷落大家。「詩人」看到「美洲豹」蒙受冤屈既不辯解，也不告訴大家其實是他跟上級報告，非常感動，想跟「美洲豹」結交，「美洲豹」不為所動，第2部在這裡結束。
最後1部是尾聲，只有1章，因著甘博亞1度堅持要徹查殺人事件，後來又堅定的想查辦學員宿舍中的弊端，被上級調離軍校，外放到偏遠山區，臨行前，他與「美洲豹」在校外會談，問「美洲豹」為什麼在調查時不願承認，他不做學校教官後又寫信表明自己殺害「奴隸」，「美洲豹」說自己終於能體會「奴隸」被欺負的心情，知道別人比奴隸更壞，自己為大家抵擋高年級的欺負，大家卻出於膽小怕事而背叛他。甘博亞問他為什麼不告訴大家是「詩人」告發他們，「美洲豹」說因為「詩人」是為了給朋友報仇，其他人純粹是膽小怕事，中尉說自己對「美洲豹」報仇、忠誠的想法沒興趣，告訴他讓軍事當局承認錯誤比讓「奴隸」起死回生還難，而且事情不會那麼容易了結，要他從「奴隸」的死吸取教訓，毀掉他自承罪狀的信。
尾聲以「詩人」的畢業象徵著全班都畢業了（除了「奴隸」和「卡瓦」）。「詩人」已和特萊莎分手，先前第2部中，「詩人」給特萊莎報告「奴隸」的死訊，特萊莎不很在意，仍只愛著「詩人」，「詩人」很悲憤，就已埋下伏線，小說的結尾是1大段「瘦子」伊蓋拉斯（el flaco Higueras）跟「美洲豹」的談話，這段話呼應前面所有的「美洲豹」內心獨白這條線，從這條線可以看到：「美洲豹」爸爸是因公殉職的公務員，撫恤金根本不夠維持他和媽媽的生計，「美洲豹」和鄰居特萊莎從小青梅竹馬，1起做功課，還去特萊莎讀書的學校等她下課1起回家，後來媽媽不供他繼續上學，他哥哥（這個軍校裡無人能敵的打架好手是哥哥調教出來的）去當兵前的朋友「瘦子」就帶他1起偷東西，「美洲豹」分到的錢就給媽媽。後來「美洲豹」跟1個男生在海灘上為特萊莎爭風吃醋打架，把對方的頭打破，被抓到警察局，又從警察局跑出來，跟「瘦子」到處流浪，偷東西、嫖妓、打架樣樣學樣樣來，「瘦子」被捕後「美洲豹」回到利馬投靠教父（類似乾爹），教母（類似乾媽）勾引他，反倒讓他藉機透過教母讓教父支持他投考軍校。
在尾聲「瘦子」跟美洲豹的談話中，可以看到「美洲豹」已經完成學業，在銀行上班，是個正經人hombre serio了，特萊莎被「詩人」拋棄後，跟「美洲豹」重逢，2人陷入熱戀，15天以後結婚了。