前言
是在原有文章的基础上直接扩充更新还是将其作为单独的系列文章呢?思虑再三,还是决定把接下来的Day01-Day05的总结独立出来。此系列是关于《Python编程:从入门到实践》的总结,亦可看作是在我上一篇文章的基础上的加强版本,所以大家看到有些部分没有从浅入深的一个过程或者是没头没脑也请不要惊讶。由于笔者(没错就是我)水平实在有限,欢迎大家在评论区或者私聊我进行批评指正,闲话少说,我们开始吧。
《Python编程:从入门到实践》总结_Day01
《Python编程:从入门到实践》总结_Day02
《Python编程:从入门到实践》总结_Day03
《Python编程:从入门到实践》总结_Day04
《Python编程:从入门到实践》总结_Day05
上一篇文章请见《编程小白的第1本Python入门书》总结
-
老规矩,talk is cheap, show you my mindmap
1. 变量
1.1 常见报错
- 变量命名的报错;
not define
:这种情况较为常见,主要是由于在使用该变量之间未定义该变量,或者是调用时的变量名与定义时的变量名不同(检查是不是拼写有什么问题)。 - 变量命名注意;
尽量少使用字母l
和字母o
,因为在某些编辑器的显示中,会将其和数字1
和0
相混淆,当然这只是建议而已。
2.字符串
-
常见报错;
如果在单引号中定义的字符串中使用了撇号或者单引号,就会发生错误.Python会将第一个单引号与撇号之间的内容视为一个字符串,从而报错。当我们看到Python代码中以普通句子的颜色显示或者普通句子以代码的颜色显示时,就可能是由于代码中出现了这种符号不匹配的情况。message = "One of python's strengths is xxxxxx"
修改字符串大小写的方法;
xxx.title()
:将单词的首字母改为大写字母。
xxx.upper()
:将所有字母都改为大写字母。
xxx.lower()
:将所有字母都改为小写字母。
⚠️:
1、我们在存储数据的时候,无法依靠用户来提供正确的大小写,因此首先需要减肥字符串先转换为小写,再存储它们,待日后需要的时候再将其转换为合适的大小写方式。
2、在我学习的时候有个疑惑,python是如何保证可以正确识别出单词呢?后来经过我的验证,我认为python应该识别的是单词之间的空格,也就是将两个空格之间的字符串识别为一个单词,并根据方法对其进行操作。换行符&制表符;
换行符:\n
,可对输出的信息进行换行操作。
制表符:\t
,可对输出的信息进行制表空格的操作。
以上是相对较为常用的两种,还有其他的标识符,可在网上查询使用。-
删除空白或指定字符;
首先我们要知道空格:也是字符的一种,也就是说--“python”和“python ”是不一样的字符串(另外如果有朋友知道markdown在行内引用的首尾如何添加空格方法,还望不吝赐教)
xxx.strip()
:可删除字符串头尾处的空白(若向该方法中传入参数,可将头尾处相匹配的字符串删除)
xxx.lstrip()
:删除字符串的左侧(头部)空格或指定元素。
xxx.rstrip()
:删除字符串的右侧(尾部)空格或指定元素。
⚠️:
若是直接调用该方法的话,相当于是创建了一个副本,进而在副本中进行操作,而未影响字符串本身,若是想在原字符串上进行操作,则需要将使用该方法后的结果再存回字符串中。
3.列表
反向索引;
在上一篇文章中的列表部分我简单介绍了关于列表的反向索引的问题,而该方法经常使用的一个场景是我们通常要在不知道列表的长度的情况下访问其中最后一个元素(或倒数2、3个元素),这时采用反向索引无疑是一种比较明智的做法。-
删;
xxx.remove()
:在上一篇文章中介绍关于该方法时提到,当列表中有同样的元素出现多次的时候,该方法默认只能删除列表中的第一个指定的值,若想要将同样的元素全部删除,则需要使用循环来进行判断。
xxx.pop()
:相信大家看到pop
就知道了该方法是将列表看做了一个栈
1、列表中没有参数的时候
相当于弹出栈顶(列表尾部)元素,并在从列表中删除该元素后,可以继续使用它的值,我们来看一下书中的例子。motorcycles = ['honda', 'yamaha', 'suzuki'] popped_motorcycle = motorcycles.pop() print(motorcycles) print(popped_motorcycle)
而对应的输出结果如下:
['honda', 'yamaha']
suzuki
排序;
xxx.sort()
:在上一篇文章中介绍的sorted()
函数是类似于创建副本的排序方法,而这一次我们使用的方法是则是一种永久性的排序方法,在使用该方法排序后无法恢复到未排序前的状态。且默认为顺序,若设置其中的参数reverse=True
,则可进行倒序排列。
⚠️:
sorted()
是“函数”
sort()
是“方法”,使用为xxx.sort()
二者一个是方法,一个是函数,使用时请注意不要混淆。-
反转列表;
xxx.reverse()
:反转列表中元素的位置顺序,该方法是直接修改原字符串,所以在输出的时候应是print(xxx)
而不是print(xxx.reverse())
hero = ['iron man', 'spiderman', 'Mr_Hou'] hero.reverse() print(hero) ['Mr_Hou', 'spiderman', 'iron man']
对应的输出为:
['Mr_Hou', 'spiderman', 'iron man']
⚠️:
这里说的“反转”不是按字母顺序相反的顺序来排列列表中的元素
列表长度;
len()
:该函数的作用是确定列表的长度,我们有时在对列表进行索引的时候可能会索引错误,这时我们可以将列表的长度打印出来,因为在对列表进行动态处理的时候,列表可能会变成出乎你意料的样子。
⚠️:
该函数是从1
开始计算的生成数字列表;
range()
:该函数可以顺序生成一列的数字,具有差一行为(即range(1, 5)
,会生成数字1~4),我们可以使用list()
函数将生成的数字转换成为列表的形式,同时我们可以增加其中参数以设定步长。
我们在循环中设置条件,几乎能够创建任何需要的数字集。 --《Python编程:从入门到精通》
- 复制列表;
xxx_copy = xxx[:]
:我们通过这种切片方法,将原列表完全复制给一个全新的列表
xxx_copy = xxx
:这种通过赋值符号直接赋值的方法,是将两个列表均指向同一个列表,而不是像上面的切片方法一样制造了两个完全独立的列表2