之前 你不知道Python多能干 ,秒懂精通pip并快速体验深度学习应用和 总结Python运行代码的几种姿势 等文章更多是给读者打开认知,找找感觉建立兴趣。
本篇我们直接过一遍基础(上篇),代码和运行图片都贴好了。
表达式
下面表达可以直接执行
1+1 2-2 5*5 9/3 "希望都333" print("希望都333")
几行代码分别展示加减乘除。
我把结果贴出来了,方便学习:
后面两行为字符串表达式,和函数调用表达式。
变量 & 常量
下面的第一行代码就是把右边的表达式的值,传递给变量text,或者说是赋值给text。
第一行定义了变量text,同时把左边的值赋给它。
第二行直接进行输出。
text = "Hello, 雷学委的读者们!" print(text) text = "Demo" x, y = 1, 1 a = b = c = 333
第三行为变量重新赋值(设置新值);
第四行为多个变量赋值。
python没有常量!但是我们都会默契的把常量的名字命名为大写字母
PI = 3.1415926 print(PI) PI = 3
我们看到第三行,PI变量被重新赋值了!
所以都是默契大写字母命名常量,碰到这种常量不要去修改它的值!
注释
注释就是代码中标注,就像写PPT在旁边加一下备注。或者制作excel在单元格加备注一样。
程序不会运行注释,但是备注的注释可以自己以后看,亦能给他人更方便阅读你的代码。
python的注释使用#符号开头或者多行注释,如下:
#这是学委添加注释:算出5的平方 a=5*5 #这里也可以注释 """这个也算注释 多行注释 """
函数
还是上面的代码,print就是一个函数。
但是Python中函数出了调用,还能自己定义。
类似数学中f(x) = 2x + 5 表示一条直线一样。
"""雷学委现编函数:求直线上面任意一点的纵轴值""" def f(x): return 2*x + 5 #函数调用 print(f(2))
定义了函数f(x)之后,我们就可以直接调用了。比如查看x=2时,f(x)的值,那么就调用f(2)。
这里特别说明定义函数稍微有要求的。如下:
(为了看清楚一点,学委用了“····”代表4个空格)
def 函数名(参数1,参数2,…, 参数N):
····第一行代码
····第二行代码
····省略N行代码
····最后一行代码
所以这里看到函数定义内部是需要锁进的,这样的代码为一个整体块。
上面的函数内部用了4个空格缩进,那么内部每一行至少得4个空格缩进。如果碰到分支还需要再次缩进。
python解析器会安装缩进规则扫描识别函数,如果缩进不一致,那么会报错!所以要么4个空格缩进,要么2个空格(学委看过的开源python框架都是4个空格的)。
保留关键字
保留是什么意思?
看看下图,用and命名变量,程序直接报错!
Python内不允许使用下面的单词作为变量名
这些词就像汉字拆解出来的笔画一样,不允许被用来重新定义!
反正大把命名的词汇,别硬杠上面的!
标准数据类型
Numbers (多种数字类型)
String(字符串)
List (数组)
Tuple(元组)
Dictionary(字典)
数字类型
整型数(不像其他语言,python只有一个整数类型,包括了长整型)
浮点数( 其实这个就是带小数点的数)
复数(这个还是数学课本中的复数)
我们把形如a+bi(a,b均为实数)的数称为复数,其中a称为实部,b称为虚部,i称为虚数单位。
不用都说,直接展示一下:
zhengshu = 123 zhengshu = -12345 print(zhengshu) fudianshu = 123.1323 fudianshu = -123.34234 print(fudianshu) fushu = 1234j fushu = -1 + 143.3j print(fushu)
看完后,直接复制贴到终端运行:
这里需要注意的是:python3中只有一个整型类型int,不像Java,当然python2是区分了int和long类型。这样在python3中,int类型的整数可以认为范围无限大(如果内存也跟着无限制的话)。
字符串类型
字符串就是多个字符串在一起被引号(单引号/双引号/三引号)括起来。
比如text=“hello” 那就是把多给字符“h",“e”,“l”,“l”,"o"一个接一个串起来。
我们看看下面的代码,直接运行比较直观。
text1='hello' text2="Hello" text3="""学委展示多行文本! 第二行 """ text1 text2 text3
字符串其他操作
text="abcde12345" text[0] text[2:5] text[2:] print(text * 2) #打印2两次 print("Hello" + text)
text由于10个字符串起来。
简单理解,第二行‘[‘和‘]’,这一对中括号,是python操作字符串获取子串的。
效果如下:
基本上比较简单,唯一注意的就是字符串的下标是从0开始的。
数组
如果我们把上面的字符串‘粗暴地’看作一个字符数组的话,那么我们这里说的数组更加宽松。
它的元素可以是字符串,整数,浮点数等。
比如下面的代码:
list1 = ['1','2','3','4','5'] list2 = ['雷学委代码', 12345, 2.333, 5-4j] list3 = [] list1 list2 list3
截取获得局部数组
类似于字符串获取子串,数组也可以通过‘[:]'符号来获取:
list1 = ['1','2','3','4','5'] list2 = ['abc', 'cde'] list1[0] list1[1:3] #获取第二到第四个位置之前的元素为新的数组 print(list1 * 2) #元素复制一份追加后面排成一个新的数组 print(list1 + list2) #数组的加法
运行效果如下:
元组Tuple
元组Tuple是另一种系列数据,跟数组很像。但是外部用圆括号包围,内部元素用逗号隔开。
而且元组是不允许修改,也就是可以当做只读数组。
tp1 = (1,2,3) tp2 = ('abc', 123) tp1 tp2 print(tp2 *2) print(tp1 + tp2)
运行效果如下:
没骗你,tuple类型只读的。
这里补充一下数组的一个追加数据的方法append。(删除怎么做,读者可以自己想想看)。
但是tuple类型明显没有支持这个操作。如下图:
字典Dictionary
字典类型,比较形象,就像字典一样,可以通过索引快速找到内容。
比如某个字典只有三个词索引映射情况如下:
a -> 吖
b -> 呗
c -> 吃
所有它具有(索引-> 目标值) 这种结构。(玩过Scala的朋友就知道,scala写一个类似索引的结构很直观)
dict = {} dict['a'] = '吖' #设置字典索引‘a'的值为’吖‘ dict['b'] = '呗' dict['c'] = '吃' dict print(dict['a']) #查找索引'a'的值 print(dict['b']) print(dict['c']) """学委这里展示了一个毫无意义的字典,只有三个词"""
执行效果如下:
最后思考一下
上面是比较轻松的学习,都是直接贴代码到终端就可以运行看效果了。
现在来个小问题:
def f(x): return x*x #请问下面是几次函数调用? #调用函数就输入:f(2), 调用了f函数,参数为2. #下面调用了print函数,参数为f(2) print(f(2))
下篇链接: 多图速成Python基础语法下篇 。