Linux使用clash代理

起因

偶然发现百度云的学生服务器挺便宜,2核心4g内存机型一个月只要18元,有个随时随地能够访问的Linux环境还是挺好的,遂购入。新系统初始化完成,第一件事当然是来一套ohmyzsh,结果这就出了问题,git clone太慢了。

遂想到是不是该给其使用一下代理。不然之后不止git clone,很多资源都无法下载。

阅读更多

20年春招字节跳动后端开发实习面试

第一轮面试

首先自我介绍

开发知识

问我比较熟悉什么语言,答Java,遂开始问Java

  • 讲讲HashMap实现原理,HashTableHashMap有什么不同?
  • 讲讲ConcurrentHashMap怎么实现的,有什么特点?
  • Objectwait()notify()方法有什么作用?
  • 讲讲Jvm内存结构。
  • synchronizedLock在API/使用上有什么不同?
  • 了解过Redis吗,Redis有哪些常见数据结构?
  • 剩余的记不清了…
阅读更多

CS:APP I/O_lab

实验步骤

本次试验中,主要涉及keyboard.S,tty_io.c,console.c。其中:keyboard.S主要实现键盘中断处理过程,当按下键盘时,出发中断,由对应函数进行处理,并将字符放入read_q写队列中;tty_io.c包含tty字符设备读函数tty_read()和tty_write(),为文件系统提供了上层访问接口,copy_to_cooked()将输入字符处理后添加到tty辅助队列secondary中,若开启了回显功能,则还会将其添加到write_q写队列中,由console.c中的con_write()函数中写入到终端。

阅读更多

Python ElementTree数据清洗

简介

XML是一种可扩展标记语言,被用来传输和存储数据。它是一种有逻辑的树结构。

Python使用xml.ElementTree解析

1
2
3
import xml.etree.ElementTree as ET
import codecs
import json

codecs用于打开文件,json用于保存清洗完的数据。

1
2
3
tree = ET.parse()		#获取目录树
root = tree.getroot() #得到树根
root = ET.fromstring() #从字符串直接解析出树根

获取树根,然后进行操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
root.tag		#root元素的标记名
root.attrib #root元素的属性,为一个dic
for child in root: #便利子元素
print(child.tag, child.attrib)
root[0][1].text #将元素视为多维数组,用下标访问
root.find("element").text #找出root下element下的内容字符串
title = root.get("Title") #获取root元素的title属性

for neighbor in root.iter('neighbor'): #遍历所有特定元素,递归到所有,子、孙...元素
print(neighbor.attrib)
for country in root.findall('country'): #找出所有country元素,仅子代
rank = country.find('rank').text
name = country.get('name')
print(name, rank)
for country in root.find('country'): #仅找出第一个符合的子代

其他涉及知识

1
2
3
4
5
6
7
8
9
import os

def mkdir(path): #创建文件夹
if not os.path.exists(path):
os.mkdir(path)

for son_path in os.listdir(root_path): #遍历root_path下的文件

json.dump(dic, file_obj, ensure_ascii=False, indent=4, separators=(',', ': ')) #将字典dic输出到文件file_obj中,不对ascii进行编码,缩进4,分隔符为','以及': '

暂时到此

Your browser is out-of-date!

Update your browser to view this website correctly.&npsb;Update my browser now

×