前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【我问 Crossin】想转行做后端开发,要多久?

【我问 Crossin】想转行做后端开发,要多久?

作者头像
Crossin先生
发布2018-04-17 14:08:32
8760
发布2018-04-17 14:08:32
举报
文章被收录于专栏:Crossin的编程教室

1

sys.argv[] 该如何使用?

Crossin:

sys.argv 是用来获取命令行参数的,sys.argv[0] 表示代码本身文件路径,所以参数从1开始。

举例: 在脚本文件 file.py 中我们写下如下代码

代码语言:javascript
复制
import sys

print(sys.argv[0])
print(sys.argv[1])
print(sys.argv[2])

然后我们在命令行运行:

代码语言:javascript
复制
>>> python file.py parameter1 parameter2
file.py
parameter1
parameter2

体会一下输出:sys.argv 从命令行获取输入的参数,第一个为文件名,之后依次为输入的数据。

2

王仙客:

代码语言:javascript
复制
>>> import re
>>> patt = re.compile('\w{3}\.([a-zA-Z]+\.)+com')
>>> re.findall(patt,'www.baidu.com') 
['baidu.']

这个输出为什么不是 www.baidu.com 啊,为什么匹配结果只有圆括号里的呢?

Crossin:

这里需要明确在 正则表达式 中的一个概念:圆括号指定分组

举个例子,要匹配一组带有区号的的电话号码比如 021-12345678 我们可以写这样的表达式 \d{3}-\d{8} ,现在我们希望从一组有效的号码中仅匹配区号,这时就可以使用圆括号指定分组,编译表达式 (\d{3})-\d{8} 就可从一组有效的号码中仅取出区号部分。

代码语言:javascript
复制
>>> import re
>>> patt1 = re.compile('\d{3}-\d{8}')
>>> patt2 = re.compile('(\d{3})-\d{8}')
>>> phone_num = '021-12345678 132 344 54645754'
>>> re.findall(patt1,phone_num)
['021-12345678']
>>> re.findall(patt2,phone_num)
['021']

所以使用 \w{3}.([a-zA-Z]+.)+comwww.baidu.com 进行匹配,最后得到的结果只会包含括号部分即 [‘baidu.’]

3

ManutdGTA: 老师您好,看了你的公众号两周了。最近边工作边抽空学python,想转行做后端开发。我大致看了下职位要求,要会python,linux,http协议,mysql,数据结构,算法,django,感觉自学难度好大,真的像您说的最起码要1~2年。你指的项目开发经验就是指上述我列举的这些吗?

Crossin:

是的,举个例子,你自己开发一个模仿知乎的网站,用django,数据库用mysql,运行在Linux上,最好在放在云服务上,你上面说的这一整套就会都涉及了。拿这个项目去面试,必然比你空口说学过哪些有说服力。 之后我们也会考虑做类似这种的课程,把这样一个站做下来。

但终究还是离不开花时间练习,欲速则不达。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-03-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Crossin的编程教室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1
  • 2
  • 3
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档