学习Python怎么入门?这些基础要掌握
这篇文章给大家分享的是Python入门的支持知识,很多新手不清楚Python怎么入门,那么本文对大家会有一定的帮助,从Python环境配置到实现一个简单的功能,文中都介绍得很详细,感兴趣的朋友接下来一起跟随小编学习一下吧。
1 环境配置与基本运算
正所谓天下武功、唯快不破。学Python,讲求的就是一个快字。尽管下载Python并安装并不麻烦,但新手往往会在使用过程中出现各种让人费解的问题。所以,如果想1小时入门,我推荐这个。
在线Jupyter编辑工具,进入之后,点击中间的Try JupyterLab
,就可以进入在线Notebook的界面。
点击Python3,快速进入jupyter notebook的环境。然后按照直觉,写一些四则运算表达式,例如这些:
x = 100 y = 50 z = 2.5 print(x + y * z) print(x - y / z) print(x * y**2)
然后同时按下Ctrl
+回车
,就能运行python代码。
然后按下alt
+回车
,开启下一段代码。如果用shift
+回车
,则会综合上面的两个功能,本节耗时:3分钟。如果觉得在线Jupyter工具不好用,还有这个ideone,进入之后选择python
,输完代码后选择run
。
2 调用各种包
在python中,通过import
来完成包的调用。例如,我想调用一个日历的包,然后打印日历
import calendar calendar.prcal(2021,m=4) #2021年,每行4个月
然后shift
+回车
,就可以看到日历了。
如果想通过python进行科学计算,应用最多的包是numpy
和matplotlib
中的pyplot
,前者用于计算,后者用于绘图。通常二者被重命名为np
和plt
。接下来演示一下二者的用法。
import numpy as np from matplotlib import pyplot as plt x = np.random.rand(100) #python中通过#进行注释 y = np.random.rand(100) #用于生成100个随机数 plt.scatter(x,y) #绘制散点图,并存放在内存 plt.show() #调用内存中的图,show给我们
本节需要记住的单词
:import
、as
、numpy
、matplotlib.pyplot
、random.rand
、scatter
、plt.show
。本节耗时:5分钟。
3 判断、循环
如果想统计刚刚新建的x
和y
中,有多少大于0.5,那么方法很简单,:新建两个变量用于存储二者的个数,然后跑一个循环进行判断。
xNum = 0 yNum = 0 for i in range(100): if x[i]> 0.5:xNum += 1 # xNum += 1 即 xNum = xNum + 1 if y[i]> 0.5:yNum += 1 # python中通过方括号进行索引 print(xNum,yNum)
可以把range(100)
理解为0到99这100个数组成的一个集合,for i in range(100)
意味着i
对这个集合进行遍历,遍历就是逐个复制给i,所以就完成了循环。
在python中,判断、循环结构通过:
与其内容进行分隔,且子代码块需要通过空格进行标记。如果程序块中只有一行代码,则可以直接写在:
后面。
如果想知道,x
中处于 ( 0 , 0.3 ] , ( 0.3 , 0.6 ] , ( 0.6 , 1 ] (0,0.3],(0.3,0.6],(0.6,1] (0,0.3],(0.3,0.6],(0.6,1]这三个区间的数分别是多少,则需要用到if..elif
n1,n2,n3 = 0,0,0 #按照直觉理解即可 for i in x: if i> 0.6 : n3 += 1 elif i> 0.3 : n2 += 1 else: n1 += 1 print(n1,n2,n3)
for..in
的作用是遍历某个集合,而x
本身也是一个集合,所以也可以接受遍历。
本节需要记住的单词
:if, else, elif, for, +=,
,耗时5分钟。
4 函数
如果想反复统计一组随机数的分布情况,显然不能每次都写一遍那么老长的代码,而是应该把代码封装到一个函数里面。
def statis(x): xNum = 0 for i in x: if i> 0.5: xNum += 1 return xNum
在Python中,通过def
新建一个函数,函数名字后的括号里是这个函数需要输入的变量。最后通过return
来返回一个值。如果按照数学的那种表达式,以上代码差不多类似xNum=statis(x)这样的感觉。
在建了一个函数之后,就可以调用了,本节用时5分钟,需要记住def
和return
。
5 数据结构
我们刚刚说x
是集合,这是不准确的。数学上的集合要求不能有重复元素,但x是随机生成的一个数组,所以并不能保证这一点。在本节,我们要弄懂python中最常用的5种数据结构:元组、列表、字典、集合、数组,同时要掌握python推导式,预计耗时15分钟。
tpl = (1,2,3,4) #此为元组tuple lst = [1,2,3,4,5] #此为列表list dct = { "a":1, "b":2, "c":3} #此为字典dict st = { 1,2,3,3} #此为集合 arr = np.array([1,2,3,4]) #此为数组
可以看到,尽管我们在新建集合的时候给了1,2,3,3
,但集合中没有重复元素,所以只剩下一个3。
一句话区分这五种类型:
- 只有数组
np.array
可以计算 - 字典通过
键值对
(key-value)进行索引 - 集合无重复元素,且不可索引
- 元组可以作为字典的键,列表则不能。
这五种数据类型的详细区别如下(这个其实用不着记)。
索引方式 | 可计算 | 可哈希 | 元素可重复 | 指针式 | |
---|---|---|---|---|---|
tuple | tpl[0] |
* | |||
list | lst[0] |
* | |||
dict | dct["a"] |
** | |||
set | * | ||||
np.array | arr[0] |
其中,可哈希暂时可理解为能够作为字典的key。
所谓指针式
是我乱取的一个名字,意思是可以像指针一样把元素取出来。其中,集合与字典因为元素不可重复,所以并没有什么变化。
至于可计算就比较容易理解了,例如+
测试,字典和集合干脆就报错了,而元组、列表将+
重载为合并,只有arr
执行了加法操作。
在python中,可通过len
来获取这些数据结构的长度。
6 字符串
在字典中我们其实已经用过了字符串,在python中,用单引号或双引号来代表字符串,二者是等价的。
x = 'abc' y = "abc" print(x==y)
因为引号被用于字符串的标志,所以如果想在字符串中输入引号,则需要转义,转移符号为\
。又因为\
用于转义,所以\
也需要转义。
print('\'') print('\\') print("\"")
7 回到本地
下载python,或者下载anaconda。
如果下载之后,可通过win
+r
,输入cmd
进入命令行,输入python
进入python环境。
如果下载的是python,则通过pip isntall numpy
安装numpy
,总之其命令格式为pip install XXX
;如果下载的是anacoda,则还可以通过conda install numpy
来进行安装――当然,anaconda的基本环境已经安装了大部分常用包。
如果把python的代码封装到一个.py
格式的文件中,然后就可以通过python XX.py
进行调用,并执行。
8 命令行版2048小游戏
按理说看到这里,并写到这里,就应该算是完成了入门,那么接下来就要用入门学会的知识,写一个命令行版的2048小游戏。
2048的逻辑无非是操作4x4
的方格,每个方格中有一个数,我们可以操作这些数字进行移动,如果两个相同的数字在我们的操作下相撞了,那么它们就可以合并了。而这个4x4
的方格,无非是一个矩阵。我们的操作可以理解为输入字符,用wsad
代表上下左右,y
代表确定,n
代表取消。python接收字符的函数是input
,例如
> > > x = input("input a number") input a number5 > > > x '5'
而创建矩阵,可以用np.zeros([4,4]).astype(int)
,表示创建一个 4 × 4 4\times4 4×4的全0矩阵,并化为整形。矩阵中只有16个元素,尽管循环效率低下,但足以满足人的操作速度了。
以上就是关于“python怎么入门”的解答,如果你能够独立实现一个不太复杂的功能,那么你就算是正式入门。本文这些知识,对新手初学Python有一定的帮助,需要的朋友不妨了解看看。最后,想要了解更多Python的知识,可以继续浏览网络其他相关的文章。
文本转载自脚本之家
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: 学习Python怎么入门?这些基础要掌握
本文地址: https://pptw.com/jishu/651327.html