关闭

python学习中存在的问题

标签: Python学习Python学习
186人阅读 评论(0) 收藏 举报
分类:

1、对内置函数仍然不够熟悉

1、isspace:检测字符串是否全由空格组成

2、swapcase:大小写转换

3、hash:例如1和1.0计算出来是一样的哈希值,因此说这个函数是不区分不同的数值类型

4、all:只有当 iterable 中所有的元素均不为 0 、“”, Flase 或者 iterable 为空时,才返回 True,否则返回 Flase

5、any:与 all 相反

6、


2、对装饰器仍然不能够熟练运用

3、





不懂或不够明白的题目:

1、

>>> fpath, fname = os.path.__split__("C:\\Users\\test.txt")
>>> print fpath
C:\Users
>>> print fname
test.txt

2、

判断"C:\User\test.txt"是否存在
>>>os.path.____exists_____("C:\\User\\test.txt")

3、

>>> import re
>>> p = re.compile('ab*', ___flags=re.I____)
>>> print(p.findall('abAB'))
['ab', 'AB']

4

>>> import copy
>>> a = [1, 2, 3, ['a', 'b', 'c']]
>>> b = a
>>> c = copy.copy(a)
>>> d = copy.deepcopy(a)
>>> print id(a) == id(c)
_____
>>> print id(a) == id(d)
_____
>>> print id(a[0]) == id(c[0])
_____
>>> print id(a[3]) == id(d[3])
_____
A. True  True  True  True     B.False  False  True  False 
C. False  False  False  False   D. True  True  False  False

5、Python函数式编程——map()、reduce()

格式:reduce( func, seq[, init] )


reduce函数即为化简,它是这样一个过程:每次迭代,将上一次的迭代结果(第一次时为init的元素,如没有init则为seq的第一个元素)与下一个元素一同执行一个二元的func函数。在reduce函数中,init是可选的,如果使用,则作为第一次迭代的第一个元素使用。

简单来说,可以用这样一个形象化的式子来说明:
reduce( func, [1, 2,3] ) = func( func(1, 2), 3)

下面是reduce函数的工作过程图:



6、Python 编码时应该注意的几件事情

必要时使用Ellipsis(省略号“...”)
Ellipsis 是用来对高维数据结构进行切片的。作为切片(:)插入,来扩展多维切片到所有的维度。例如:

>>> from numpy import arange
>>> a = arange(16).reshape(2,2,2,2)

# 现在,有了一个4维矩阵2x2x2x2,如果选择4维矩阵中所有的首元素,你可以使用ellipsis符号。

>>> a[..., 0].flatten()
array([ 0, 2, 4, 6, 8, 10, 12, 14])

# 这相当于

>>> a[:,:,:,0].flatten()
array([ 0, 2, 4, 6, 8, 10, 12, 14])


7、 1!=2==1 相当于 1!=2 and 2==1


8、from fractions import Fraction

Fraction(numerator=0, denominator=1) :第一个参数是分子,默认为0;第二个参数为分母,默认为1。比如

Fraction(16, -10) 返回的是 Fraction(-8, 5)

9、将两个字典合并: 

mydict1.update(mydict2)


10、

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:51363次
    • 积分:1527
    • 等级:
    • 排名:千里之外
    • 原创:106篇
    • 转载:0篇
    • 译文:0篇
    • 评论:5条
    最新评论