您的位置:首页 > 编程语言 > Python开发

python学习杂记1

2017-09-03 10:03 302 查看
近期在学习Python,在学习过程中发现Python的库是相当的强大,甚至在刷oj的时候很多时候都是一行代码搞定

比如:输出1~100之间所有的素数

在c语言中此类题需要写双层循环,一个一个的跑出来,在依次输出,还要考虑什么时候加空格,什么时候不加空格

Python中,有一join函数,用法如下:

1、join()函数
语法:  'sep'.join(seq)
参数说明

sep:分隔符。可以为空

seq:要连接的元素序列、字符串、元组、字典

上面的语法即:以sep作为分隔符,将seq所有的元素合并成一个新的字符串
返回值:返回一个以分隔符sep连接各个元素后生成的字符串
2、os.path.join()函数
语法:  os.path.join(path1[,path2[,......]])
返回值:将多个路径组合后返回
注:第一个绝对路径之前的参数将被忽略
另外,Python还有另一强大的函数map:

map()函数接收两个参数,一个是函数,一个是序列,map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。

举例说明,比如我们有一个函数f(x)=x%2,要把这个函数作用在一个list [1, 2, 3, 4, 5, 6, 7, 8, 9]上,就可以用map()实现

#使用lambda函数

>>> print map(lambda x: x % 2, range(7))

[0, 1, 0, 1, 0, 1, 0]
因此,我们只需要:

print ' '.join(map(str,filter(lambda x:not[x%i for i in range(2,x/2+1) if x%i == 0],range(2,101))))


这一行代码即可得出想要的结果。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python