程序员经常用到的十个网站,值得收藏

偶尔有收到一些读者留言和询问:大佬,你知道有哪些适合初级学者的技术论坛或网站吗?

我摸了摸头,若有所思的答道:这个还真有,不知道你喜欢什么风格和适合哪些?…

我没有见过凌晨4点的洛杉矶,但我见到过凌晨3点的灯火通明的写字楼,挑选了 10 个堪称神器的学习网站,推荐给大家。如果觉得不错的话,文末请点赞加关注。

01 GitHub

国外的网站,各种知名的公司以及开源框架源码,你可以直接把框架源码clone到本地,也可以大胆把你所想写出来,pull上去成为贡献者,向国内外各种大佬学习他们的优秀编程思想和架构技术,也是一个体现程序员级别的地方。

02 csdn

专业IT技术社区:号称国内的github,为1亿技术人员提供一个优秀的学习和交流的平台,以技术博客论坛为主,无数的星级大牛博主,有些更是出书的大牛,每天都在上面分享一些自己的点点滴滴。坚持写作,从点滴做起。

03 知乎

本是一个分享各种人生杂谈,和一些鲜为人知以及各种大牛的免费和付费的知识型网站。由于流量逐步扩大,吸引了大批优秀的程序员在上面分享自己的技术创作,也是一个程序员常去的网站之一,不仅仅是为了学习技术。

04 OSChina(开源中国)

开源中国,上面有非常非常多的各种开源软件和插件。没准你公司用的哪个网站或app就是从上面copy下来的,有免费的有收费的,各种各样琳琅满目。算是一个比较古老的大而全的技术论坛和博客社区了,值得收藏。

05 StackOverFlow

这是一个由外国人创办的专为程序员提供的国际性问题解答交流社区,正如网站签名:Stack Overflow - Where Developers Learn, Share, & Build Careers。这个网站非常的纯粹,一般人还真不太习惯用这个,没有一手好英语还看不太懂全英文的技术交流与问答。

06 简书

简书是一个不仅仅为程序员提供的创作分享社区,上面充满了各种各样精彩的博文,不难看出这个网站的创始人的初衷是做全品类的创作社区,野心还是蛮大的哟。不过要做大而全就很难做到专业了,相比较与csdn个人认为在技术创作方面就略低一筹了。

07 牛客网

期初我是不太关注这个网站,当我闲逛了一个月后,发现上面的东西真的很有价值,这个网站不像csdn和OSChina以技术博客论坛为主了。但是在你需要的时候,却是相当有价值,里面有面试技巧、各种知名的不知名的互联网公司的对应往年校招社招面试题库,刷到你手软。

08 cnBlogs(博客园)

也是国内早起一批专为程序员们提供的一个免费技术论坛博客,上面有各种各样你想要寻找的解决方案,以及各种各样你见到的没见到的疑难杂症,值得拥有。

09 LeetCode

几乎每个算法大牛都知道的神奇网站,这个网站上面有:算法、数据库、Shell、多线程等多种类型供你学习。多数人在上面练习编程算法,尤其是给想进入一线互联网公司的技术人员,提供了一个免费又方便的题库。面试前都会在上面进行长期和充分的刷题,是你的不二选择。

10 Bilibili(哔哩哔哩)

期初这个网站是由游戏玩家视频火起来的,尤其LOL骨灰级玩家遍布其中。bilibili 是国内知名的视频弹幕网站,通过动漫打出了名声,最近两年发展势头迅猛,里面有不少有创意的 Up 主,不乏一些有趣的程序员。马上就到520情人节啦!今年又是特别的2020520<a https://www.douban.com/doulist/112358084/
https://www.douban.com/doulist/112358084
https://www.douban.com/doulist/112358084/?sort=time
https://m.douban.com/doulist/112358084/
https://m.douban.com/doulist/112358084
https://www.douban.com/doulist/112358084/?collect=yes&ck=None
https://movie.douban.com/doulist/112358084/
https://movie.douban.com/doulist/112358084
https://www.douban.com/doulist/112358084/comments/
https://www.douban.com/doulist/112358084/comments
http://www.douban.com/doulist/112358084/
http://www.douban.com/doulist/112358084
http://m.douban.com/doulist/112358084/
http://m.douban.com/doulist/112358084
http://www.douban.com/doulist/112358084/?collect=yes&ck=None
http://www.douban.com/doulist/112358084/?type=followers
http://www.douban.com/doulist/112358084/?sort=time
http://movie.douban.com/doulist/112358084/
http://movie.douban.com/doulist/112358084
http://www.douban.com/doulist/112358084/comments/
http://www.douban.com/doulist/112358084/comments
http://book.douban.com/doulist/112358084/
http://book.douban.com/doulist/112358084
http://music.douban.com/doulist/112358084/
http://music.douban.com/doulist/112358084
https://book.douban.com/doulist/112358084/
https://book.douban.com/doulist/112358084
https://music.douban.com/doulist/112358084/
https://music.douban.com/doulist/112358084
我们在编写一些自动化脚本的时候,为了方便,经常需要以txt 文件作为数据输入,今天就跟大家讨论一下如何对txt 文件进行读取并生成对应的列表等程序可操作的数据载体。
在这里插入图片描述

开始

  1. 载入文件

这步就大家比较熟悉,文件操作中最基本的了。

因为我们只需要读取文件,并不需要写入文件,所以在这里指定mode=“r” 为只读模式(默认)。

f = open(“C:/foo.txt”, “r”,encoding=‘utf-8’)
1
此时就有了这个txt 文件的数据输入流了。

  1. 读取数据流

读取数据的方法主要有三个,分别是read()、readline()、readlines()

方法 作用
read() 从文件读取指定的字节数,如果未给定或为负则读取所有。
readline() 读取整行,包括 “\n” 字符。
readlines() 读取所有行并返回列表,若给定sizeint>0,返回总和大约为sizeint字节的行, 实际读取值可能比 sizeint 较大, 因为需要填充缓冲区。
接下来简单展示一下这三种方法的区别:
这是foo.txt 中的内容

(“祖安”, 1000)
(“诺克萨斯”, 900)
(“艾欧尼亚”, 880)
(“暗影岛”, 750)
(“征服之海”, 620)
(“黑色玫瑰”, 600)
(“德玛西亚”, 500)
(“裁决之地”, 440)
(“圣安地列斯”, 400)
(“自由城”, 350)
(“供电所”, 300)
(“影流”, 200)
(“荆棘坎坷”, 180)
(“永不言弃”, 100)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
read()
和txt 数据格式一致,返回str 类型数据
在这里插入图片描述
readline()
只读取一行(包括换行),返回str 类型数据
在这里插入图片描述
readlines()
全部读取,返回list 类型数据
在这里插入图片描述
3. 数据处理

根据上一步,我们可以得到多种形式的数据类型,从而根据我们的需求进行多种处理。

大家可以看到,我的foo.txt 中的数据是满足元组形式的,那我就试着将foo.txt 文件中的字符串类型数据转变成元组吧:

line = f.readline() # 读取一行
tu = eval(line) # 转为元组形式
print(tu)
print(type(tu))
1
2
3
4
输出:
在这里插入图片描述
若需要全部数据都逐行转变为元组,然后整体串成一个列表:

txt_tables = []
f = open(“C:/foo.txt”, “r”,encoding=‘utf-8’)
line = f.readline() # 读取第一行
while line:
txt_data = eval(line) # 可将字符串变为元组
txt_tables.append(txt_data) # 列表增加
line = f.readline() # 读取下一行
print(txt_tables)
1
2
3
4
5
6
7
8
之所以while 循环中的f.readline() 能够不断读取下一行,是因为当我们每次执行完一次该语句之后,文件输入流的指针都会移动到下一行的起始位,所以每次再次执行,都是从下一行的第一个字符开始读取。
输出:
在这里插入图片描述

  1. 关闭文件

是的,不要忘了关闭文件流:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值