写在前面
本想停一段时间这个系列, 但是好多朋友给我发信息说让我继续整理下去, so, 继续吧~
第 1 题: docstring 是什么?
docstring 是一种文档字符串, 用于解释构造的作用. 我们在函数, 类或方法中将它放在首位来描述其作用. 我们用三个单引号或双引号来声明 docstring.
- >>> def say():
- """
- 这是 docstring
- """ print("docstring")
- >>> say()
- docstring
- >>>
要想获取一个函数的 docstring, 我们使用它的_doc_属性
第 2 题: PYTHONPATH 变量是什么?
PYTHONPATH 是 Python 中一个重要的环境变量, 用于在导入模块的时候搜索路径. 可以通过如下方式访问:
路径列表的第一个元素为空字符串, 代表的是相对路径下的当前目录
由于在导入模块的时候, 解释器会按照列表的顺序搜索, 直到找到第一个模块, 所以优先导入的模块为同一目录下的模块.
导入模块时搜索路径的顺序也可以改变. 这里分两种情况:
通过 sys.path.append(),sys.path.insert()等方法来改变, 这种方法当重新启动解释器的时候, 原来的设置会失效.
改变 PYTHONPATH, 这种设置方法永久有效
第 3 题: Python 中的不可变集合 (frozenset) 是什么?
集合分为两种类型:
set -- 可变集合. 集合中的元素可以动态的增加或删除.
frozenset -- 不可变集合. 集合中的元素不可改变.
首先, 我们讨论一下什么是集合. 集合就是一系列数据项的合集, 不存在任何副本. 另外, 集合是无序的.
- >>> myset={
- 1,3,2,2
- }
- >>> myset
- {
- 1, 2, 3
- }
这就意味着我们无法索引它
- >>> myset={1,3,2,2}
- >>> myset
- {1, 2, 3}
- >>> myset[0]
- Traceback (most recent call last):
- File "<pyshell#11>", line 1, in <module>
- myset[0]
- TypeError: 'set' object does not support indexing
- >>>
TypeError:'set'不支持索引.
集合是可变的. 而不可变集合却不可变, 这意味着我们无法改变它的值, 从而也使其无法作为字典的键值.
- >>> myset=frozenset([1,3,2,2])
- >>> myset
- frozenset({
- 1, 2, 3
- })
- >>> type(myset)
- <class 'frozenset'>
- >>>
第 4 题: 如何检查字符串中所有的字符都为字母数字?
对于这个问题, 我们可以使用 isalnum()方法.
isalnum()必须是数字和字母的混合
其他内容
str.isalnum() 所有字符都是数字或者字母
str.isalpha() 所有字符都是字母
str.isdigit() 所有字符都是数字
str.isspace() 所有字符都是空白字符, t,n,r
第 5 题: 什么是 Python 中的连接(concatenation)?
Python 中的连接就是将两个序列连在一起, 我们使用 + 运算符完成
第 6 题: Python 的不足之处
Python 有以下缺陷:
Python 的可解释特征会拖累其运行速度.
虽然 Python 在很多方面都性能良好, 但在移动计算和浏览器方面表现不够好.
由于是动态语言, Python 使用鸭子类型, 即 duck-typing, 这会增加运行时错误.
她专科学历
27 岁从零开始学习 c,c++,python 编程语言
29 岁编写百例教程
30 岁掌握 10 种编程语言,
用自学的经历告诉你, 学编程就找梦想橡皮擦
来源: http://www.bubuko.com/infodetail-3064061.html