最近,“Python将纳入高考”的消息,狠狠地刷了朋友圈。

尽管这则消息目前还未得到官方的确认,但人们对于Python的火热关注度,还是引来众程序员热议。

虽然小编资历尚浅,但还是有话要说。

python是小编用过的最简易实用的一门语言,这就举几个例子。

(1)查找文件
Cer们,你知道,“遍历目录找出文件”,重头实现这个功能都很费劲,对吧?

那python是怎么做到的呢?代码如下:

#!/usr/bin/python
import os
def traverse(dirpath):
    files = os.listdir(dirpath)
    for file in files:
        fullpath = os.path.join(dirpath, file)
        if os.path.isdir(fullpath):
            traverse(fullpath)
        else:
            print fullpath

traverse('xxx/targetdir')

是不是很简单?而且,还没有提到glob的使用呢,用这个模块来查找文件,真是简单的很!

(2)读取文件
还记得c语言的getline吗,python有readlines,而且更易用。

比如,删除一个文件中的重复行(产生一个新的文件),可以这样写(性能都不在考虑范围):

import os;
def delduplicate():
    fout = open("newone.txt", "a+")
    alllines = open("original.txt").readlines()
    for i in range(len(alllines)-1):
        one=alllines[i][0:21]
        two=alllines[i+1][0:21]
        if one!=two:
             fout.write(alllines[i])
    fout.write(alllines[len(alllines)-1])

(3)批量爬取
你还在用c语言的socket来组装吗?

python的urllib已经被广泛使用了。

比如,批量获取某某平台的歌曲,可以这样(注意红框内的调用就好):
Python将纳入高考?-LMLPHP

(4)游戏
比如,写一个猜数字的游戏:

import random

secret=random.randint(0,100)
temp=input("请说出我想的数字:");
guess=int(temp)
while guess!=secret:
    if guess>secret:
        print("没有这么大,说个小的!")
    else:
        if guess 0:  # 还有得装且还有容量
            if rest >= ws[i]:  # 装得下就装
                s.append(i)
                rest -= ws[i]
            i += 1   # 不管当前的是否装得下,都要尝试下一个
        if rest == 0:
            ret.append(s[:])  # one solution
        i = s.pop()
        rest += ws[i]
        i += 1
    return ret

关于数据结构,陆小凤迟点会发表一系列的文章,感兴趣的同学可以留意。

(6)画图
最后,还是用那个心图来结束举例:
Python将纳入高考?-LMLPHP
代码是这样的:

from turtle import *
pensize(1)
pencolor('red')
fillcolor('pink')
speed(5)
up()
goto(-30, 100)
down()
begin_fill()
left(90)
circle(120,180)
circle(360,70)
left(38)
circle(360,70)
circle(120,180)
end_fill()
up()
goto(-100,-100)
down()

python是万能了吗?

小编觉得,pyhton是解释执行的语言,对于c/c++这些编译执行的语言,在运行速度上还是赶不上人家的,在某些场景并不适合用python来做开发。

但是,如果是从入门、培养编程兴趣(像c语言之类太多细节要考虑而且还各种效果上的打折扣,是很打击人的!)、培养抽象设计、培养模块设计,这样的角度来考虑,小编是赞成小学生也来学习的!

更重要的是,同学们,你们又有机会打电脑了!

最后,如果对python感兴趣,也可以关注我们,加入我们的技术讨论群哦!

04-20 11:25