⑴ 零基础学python应该学习哪些入门知识
关于零基础怎么样能快速学好Python的问题,网络提问和解答的都很多,你可以网络下看看。我觉得从个人自学的角度出发,应从以下几个方面来理解:
1 为什么选择学python?
据统计零基础或非专业的人士学python的比较多,据HackerRank开发者调查报告2018年5月显示(见图),Python排名第一,成为最受欢迎编程语言。Python以优雅、简洁着称,入行门槛低,可以从事linux运维、Python Web网站工程师、Python自动化测试、数据分析、人工智能等职位,薪资待遇呈上涨趋势。
2 入门python需要那些准备?
2.1 心态准备。编程是一门技术,也可说是一门手艺。如同书法、绘画、乐器、雕刻等,技艺纯熟的背后肯定付出了长时间的反复练习。不要相信几周速成,也不能急于求成。编程的世界浩瀚无边,所以请保持一颗敬畏的心态去学习,认真对待写下的每一行代码,甚至每一个字符。收拾好自己的心态,向着编程的世界出发。第一步至关重要,关系到初学者从入门到精通还是从入门到放弃。选一条合适的入门道路,并坚持走下去。
2.2 配置 Python 学习环境。选Python2 还是 Python3?入门时很多人都会纠结。二者只是程序不兼容,思想上并无大差别,语法变动也并不多。选择任何一个入手,都没有大影响。如果你仍然无法抉择,那请选择 Python3,毕竟这是未来的趋势。
编辑器该如何选?同样,推荐 pycharm 社区版,配置简单、功能强大、使用起来省时省心,对初学者友好,并且完全免费!其他编辑器如:notepad++、sublimeText 3、vim 和 Emacs等不推荐了。
操作环境?Python 支持现有所有主流操作平台,不管是 windows 还是 mac 还是 linux,都能很好的运行 Python。并且后两者都默认自带 Python 环境。
2.3 选择自学的书籍。我推荐的书的内容由浅入深,建议按照先后顺序阅读学习:
2.3.1《Python简明教程》。这是一本言简意赅的 Python 入门教程,简单直白,没有废话。就算没有基础,你也可以像读小说一样,花两天时间就可以读完。适合入门快速了解语法。
2.3.2 廖雪峰编写的《Python教程》。廖先生的教程涵盖了 Python 知识的方方面面,内容更加系统,有一定深度,有一定基础之后学习会有更多的收获。
2.4 学会安装包。Python中有很多扩展包,想要安装这些包可以采用两种方法:
2.4.1 使用pip或easy_install。
1)在网上找到的需要的包,下载下来。eg. rsa-3.1.4.tar.gz;
2)解压缩该文件;
3)命令行工具cd切换到所要安装的包的目录,找到setup.py文件,然后输入python setup.py install
2.4.2 不用pip或easy_install,直接打开cmd,敲pip install rsa。
3 提升阶段需要恒心和耐力。
完成入门阶段的基础学习之后,常会陷入一个瓶颈期,通过看教程很难进一步提高编程水平。这时候,需要的是反复练习,大量的练习。可以从书上的例题、作业题开始写,再写小程序片段,然后写完整的项目。我们收集了一些练习题和网站。可根据自己阶段,选择适合的练习去做。建议最好挑选一两个系列重点完成,而不是浅尝辄止。
3.1 多做练习。推荐网站练习:
crossin编程教室实例:相对于编程教室基础练习着重于单一知识点,
编程实例训练对基础知识的融会贯通;
hackerrank:Python 部分难度循序渐进,符合学习曲线
实验楼:提升编程水平从做项目开始;
codewar:社区型编程练习网站,内容由易到难;
leetcode:为编程面试准备,对初学者稍难;
牛客网:提供 BAT 等大厂笔试题目;
codecombat:提供一边游戏一边编程;
projecteuler:纯粹的编程练习网站;
菜鸟教程100例:基于 py2 的基础练习;
3.2 遇到问题多交流。
3.2.1 利用好搜索引擎。
3.2.2 求助于各大网站。推荐
stackoverflow:这是一个程序员的知识库;
v2ex:国内非常不错的编程社区,不仅仅是包含程序,也包含了程序员的生活;
segmentfault:一家以编程问答为主的网站;
CSDN、知乎、简书等
3.2.3 加入相关的QQ、微信群、网络知道。不懂的可以随时请教。
⑵ python优点
1、简单
我们可以说Python是简约的语言,非常易于读写,遇到问题时,程序员可以把更多的注意力放在问题本身上,而不用花费太多精力在程序语言、语法上。
2、免费
Python是免费开源的。这意味着程序员不用花钱,就可以共享、复制和交换它,这也帮助Python形成了强壮的社区,使用它更加完善,技术发展更快。专业人士可以在社区和初学者分享他们的知识和经验。
3、兼容性
Python兼容众多平台,所以开发者不会遇到使用其他语言时常会遇到的困扰
4、面向对象
Python既支持面向过程,也支持面向对象编程。在面向过程编程中,程序员复用代码,在面向对象编程中,使用基于数据和函数的对象,尽管面向对象的程序语言通常十分复杂,Python却设法保持简洁。
5、库
Python社区创造了一大堆各种各样的Python库。在他们的帮助下,你可以管理文档,执行单元测试、数据库、web浏览器、电子邮件、密码学、图形用户界面和更多的东西。所有东西包括在标准库,然而,除了它,还有很多其他的库。
6、Python语言的用途
多年来,Python在各种流行编程语言中一直排名靠前。它几乎可以适用任何开发,它旨在提高程序员的开发效率而不在于他们编的代码。Python适用于网站、桌面应用开发,自动化脚本,复杂计算系统,科学计算,生命支持管理系统,物联网,游戏,机器人,自然语言处理等很多方面。而且,既使对于那些从没有开发经验的人来讲,Python的代码也是简洁易懂的。由于Python程序代码简单,所以和与其他程序语言相比,后期的程序维护更容易,更舒心。从商业角度来看,需要的成本降低,程序员的效率提高
7、谁使用Python
Python开发人员社区不断状大,支持库持续增多,使Python成为世界上功能最丰富的编程语言之一,可以适用于任何项目开发。但我们仍要指出,Python在科学领域非常流行,特别是在数据挖掘和机器学习等方面。
随着 AI 应用的发展,数百万之众的教师、公司职员、工程师、翻译、编辑、医生、销售、管理者和公务员将裹挟着各自领域中的行业知识和数据资源,涌入 Python 和 AI 大潮之中,深刻的改变整个 IT。
⑶ python语言的三个主要特点
Python语言主要有以下9个特点:
(1)简单易学
Python是一种代表简单主义思想的语言。阅读一个良好的 Python程序就感觉像是在读英语段落一样,尽管这个英语段落的语法要求非常严格。 Python最大的优点之一是具有伪代码的本质,它使我们在开发 Python程序时,专注的是解决问题,而不是搞明白语言本身。
(2)面向对象
Python既支持面向过程编程,也支持面向对象编程。在“面向过程”的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在“面向对象”的语言中,程序是由数据和功能组合而成的对象构建起来的。与其他主要的语言如C++和Java相比, Python以一种非常强大又简单的方式实现面向对象编程。
(3)可移植性
由于 Python的开源本质,它已经被移植在许多平台上。如果小心地避免使用依赖于系统的特性,那么所有 Python程序无需修改就可以在下述任何平台上运行,这些平台包括Lnux、Windows、 FreeBSD、 Macintosh、 Solaris、OS/2、Amiga、AROS、AS/400、Beos OS/390、Z/OS、 Palm OS、QNX、VMS、 Psion、 Acorn RISC OS、VxWorks、 PlayStation、 Sharp Zaurus、Windows CE,甚至还有 PocketPC、Symbian以及 Google基于Lnux开发的Android平台。
(4)解释性
一个用编译性语言如C或C++写的程序可以从源文件(即C或C++语言)转换到一个计算机使用的语言。这个过程通过编译器和不同的标记、选项完成。当运行程序的时候,连接转载器软件把程序从硬盘复制到内存中并且运行。而Python语言写的程序不需要编译成二进制代码,可以直接从源代码运行程序。在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。事实上,由于不再担心如何编译程序,如何确保连接转载正确的库等,这一切使得使用Python变得更加简单。由于只需要把Python程序复制到另外一台计算机上,它就可以工作了,这也使得Python程序更加易于移植。
(5)开源
Python是 FLOSS(自由/开放源码软件)之一。简单地说,你可以自由地发布这个软件的拷贝,阅读它的源代码,对它做改动,把它的一部分用于新的自由软件中。 FLOSS是基于一个团体分享知识的概念,这是为什么Python如此优秀的原因之一 ——它是由一群希望看到一个更加优秀的 Python的人创造并经常改进这的。
(6)高级语言
Python是高级语言。当使用 Python语言编写程序时,无需再考虑诸如如何管理程序使用的内存一类的底层细节。
(7)可扩展性
如果需要一段关键代码运行的更快或者希望某些算法不公开,就可以把部分程序用C或C语言编写,然后在 Python程序中使用它们。
(8)丰富的库
Python标准库确实很庞大,它可以帮助你处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGl、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GU(图形用户界面)Tk和其他与系统有关的操作。记住,只要安装了Python,所有这些功能都是可用的,这被称作 Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如 wXPython、 Twisted和Pyon图像库等。
(9)规范的代码
Python采用强制缩进的方式使得代码具有极佳的可读性。
⑷ python变量类型有哪些
Python 变量类型
变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。
1、变量赋值:Python 中的变量赋值不需要类型声明。
2、多个变量赋值
3、标准数据类型:在内存中存储的数据可以有多种类型。
4、Python数字:数字数据类型用于存储数值。
Python支持四种不同的数字类型:int(有符号整型)、long(长整型[也可以代表八进制和十六进制])、float(浮点型)、complex(复数)
5、Python字符串:字符串或串(String)是由数字、字母、下划线组成的一串字符。
6、Python列表:List(列表) 是 Python 中使用最频繁的数据类型。
7、Python元组:元组是另一个数据类型,类似于List(列表)。
8、Python 字典字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象集合,字典是无序的对象集合。
9、Python数据类型转换:有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可。
⑸ Python入门编程(1)变量
在开始本次的学习之前,我们先运行一下Test1.py。程序输出了 helloworld ,下面我们再进行一些更深入的思考,当这个文件被运行时,Python都做了些什么。
Test1.py
在运行这个文件时,它的 .py 后缀说明这是一个Python程序,因此 编译器 会使用 Python解释器 来运行它。接着解释器会读取整个程序,并且确认其中每个单词的含义。比如在这个程序中解释器遇到了 print() 这个单词,它便会把括号内的内容打印出来,而不管括号里面是什么。
在你编写程序时,编译器在会把程序中每个不同的不同用不同的颜色显示。比如 :
print (" helloworld ")
这种非常实用的方法叫做 语法突出 。
以上这些内容只是需要进行理解即可,接下来的内容我们便需要认真学习了。
让我们对 Test1.py 稍加修改,在这个程序中加入一个变量 sentence , 并且对print函数内的内容稍加修改,以便于让我们更好的认识变量。
通过这个程序的运行结果我们可见,修改之后的程序与先前的程序输出相同。在这里我们添加了一个名为 sentence 的变量,可知:
每个变量都储存了一个对应的值,这个值就是与变量相关联的信息。
现在我们对这个程序再加一点点的修改:
此时可以看出,同一个变量进行了两次不同的输出,这便是:
你可以随时在程序中修改变量的值,并且Python将变量的最新值记录下来。
程序员几乎每天都会犯错,下面这是一种我们初学阶段很有可能反的错误,下面我们来了解并学习如何解决它。
我们来看看这个新的程序。
Test2.py
在程序出现错误时,编译器无法对其进行下一步编译,此时编译器便会返回给我们一个 Traceback 。其是一条记录,它会解释器在运行代码时在哪里陷入困境,以上我提供的便是变量名拼写错误所被提供的 Traceback 。
编译器已经指出,在我运行Test2.py这个程序时,我们想输出的变量 sentece 并未被定义,程序无法找到识别我所提供的变量名。
名称错误的两种情况:1.在使用变量前未给变量赋值。2.变量名拼写错误。
在我这个提供的例子中,我们只需要将 sentece 修改为 sentence 便可以使程序正确运行了。
在创建程序中的变量名和编写代码时不必遵循英语的语法与拼写规则。
其实绝大多数的报错无非是在程序的某一行多写或少写一个字符,或是一些逻辑性的错误。在阅读Traceback以及寻找解决这些Bug的方法时我们应当 耐心 和 冷静 。这样会提升你解决问题的速度。
本次的文章对变量进行了初步的认识与学习,在接下来的文章中,我们将对更多Python中的相关知识进行阐述与学习。
本次的文章就先写到这里,下次我们将会进行对 数据类型 的学习。
⑹ Python 入门需要学些什么
Python相对比较简单,零基础也能学。系统学习的话,一般4-6个月左右能学好。
建议大家可以从以下三方面来入手:
①先自学一些python书籍
大家可以从书中了解一些基础知识,建立一些编程认知。
但是这样的方式,还是难免会因为没什么基础很快就觉得枯燥了,所以在书籍方面还是建议大家结合视频课程一起来学习,才能更高效一点。
②网上找相关课程
在mooc网学习的是北京理工大学的一门python公开课,整个流程学习下来能够了解一些基础相关,但课程比较浅显,还是感觉有些不系统,也很难靠自学迅速入门。
③报班学习
很多人对网上报班有些排斥,因为难免会觉得会被割韭菜。但是对于零基础的小白学习python编程而言,跟着专业系统化一点的团队一起学习,势必会更省时省力一点的。
毕竟我们没有基础,靠自学又没啥时间去坚持,能有合适的【线上陪伴式】的课程,还是挺值得一试的。建议大家可以先从体验课开始,了解清楚课程含金量,看看往期学员的体验回馈后再报班学习。
Python的学习学习顺序如下:
①Python软件开发基础
②Python软件开发进阶
③Python全栈式WEB工程师
④Python多领域开发
互联网行业目前还是最热门的行业之一,学习IT技能之后足够优秀是有机会进入腾讯、阿里、网易等互联网大厂高薪就业的,发展前景非常好,普通人也可以学习。
想要系统学习,你可以考察对比一下开设有相关专业的热门学校,好的学校拥有根据当下企业需求自主研发课程的能力,能够在校期间取得大专或本科学历,中博软件学院、南京课工场、南京北大青鸟等开设相关专业的学校都是不错的,建议实地考察对比一下。
祝你学有所成,望采纳。
⑺ Python 改变 变量值的问题
Python中的对象分为可变对象和不可变对象。不可变对象无法在原处修改对象本身的内容。int类型就是不可变对象,不可能在原处修改int对象的值,而只能令变量a指向一个新的int对象。
⑻ Python浅薄的基础小结上
Python 支持四种不同的数值类型:
整型(Int) - 通常被称为是整型或整数,是正或负整数,不带小数点。
长整型(long integers) - 无限大小的整数,整数最后是一个大写或小写的L。
浮点型(floating point real values) - 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102= 250)
复数(complex numbers) - 复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。
在Phton中常见的运算加、减、乘、除、求余、幂指数等,同现实生活中的遵循一样的优先级。即,乘除运算高于加减运算。例:
Python内置复数的计算支持所有常见复数的计算,对复数处理的数学函数在模块cmath中:
字符串或串(String)是由数字、字母、下划线组成的一串字符。Python字符串最大的特点是 不可修改, 只能生成新的字符串,用 双引号或单引号 都可以表示字符串,多行字符串用三个连续单引号表示,特殊字符用转义符 “\" 表示如: 制表符"\t",换行符"\n"
>>>str='Hello World!'
>>>print str*2 # 输出字符串两次
Hello World!Hello World!
>>>print str+"TEST" # 输出连接的字符串
Hello World!TEST
>>>len('str') #输出字符串的长度
12
python的 字串行表 有2种取值顺序:
从左到右索引默认0开始的,最大范围是字符串长度少1
从右到左索引默认-1开始的,最大范围是字符串开头
如果你要实现从字符串中获取一段子字符串的话,可以使用变量 [头下标:尾下标] ,就可以截取相应的字符串,其中下标是从 0 开始算起,可以是正数或负数,下标可以为空表示取到头或尾。比如:
s = 'ilovepython'
s[1:5] 的结果是 love。
当使用以冒号分隔的字符串,python返回一个新的对象,结果包含了以这对偏移标识的连续的内容,左边的开始是包含了下边界。
上面的结果包含了s[1]的值l,而取到的最大范围不包括上边界,就是s[5]的值p。
'abcd'[3:1:-1] #从右到左
'dc'
一些高级操作:
>>>s='You are my sunshine'
>>>s.split(' ')
['You' ,'are', 'my' ,'sunshine']
>>>t=['one','for','two']
>>>' '.join(t)
'one for two'
>>>t='Mike and Tom'
>>>t.replace('Tom','jane')
'Mike and jane'
python变量的概念和初中代数的方程变量一致,变量就像贴在东西上的标签,命名规则:大小写英文、数字和下划线,且不能用数字开头,变量可以反复赋值,而且可以是不同类型的变量
序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。
Python有6个序列的内置类型,但最常见的是列表和元组。
序列都可以进行的操作包括索引,切片,加,乘,检查成员。
此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。
列表 是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。
列表的数据项不需要具有相同的类型
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。
>>>[] #创建空的列表
[]
>>>list() #创建空的列表
[]
>>>alist=['physics','chemistry',1997,2000]
['physics','chemistry',1997,2000]
List(列表) 是 Python 中使用最频繁的数据类型。
列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(即嵌套)。
列表用[ ]标识,是 python 最通用的复合数据类型。
列表中值的切割也可以用到变量[头下标:尾下标],就可以截取相应的列表,从左到右索引默认 0 开始,从右到左索引默认 -1 开始,下标可以为空表示取到头或尾。
>>>list=['runoob', 786, 2.23, 'john', 70.2]
>>>tinylist=[123, 'john']
>>>print list # 输出完整列表
['runoob', 786, 2.23, 'john', 70.2]
>>>'runoob' in alist #某个元素是否存在
True
>>>print list[0] # 输出列表的第一个元素
runoob
>>>print list[1:3] # 输出第二个至第三个元素
[786,2.23]
>>>print list[2:] # 输出从第三个开始至列表末尾的所有元素
[2.23,'john',70.2]
>>>print tinylist*2 # 输出列表两次
[123,'john',123,'john']
>>>print list+tinylist # 打印组合的列表
['runoob',786,2.23,'john',70.2,123,'john']
Python的元组 与列表类似,不同之处在于元组的元素不能修改。
元组使用小括号,列表使用方括号。
元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
>>>() #创建空的元组
()
>>>tuple() #创建空的元组
()
元组中只包含一个元素时,需要在元素后面添加逗号如:tup1=(50,);
>>>tup=(1,True,0.234,"holle")
同列表相似 元组 适用:
+ :链接两个元组
* :复制n次,生成新的元组
in :某个元素是否存在
[start:end:step] :切片
值得注意的是元组是不可以更新的( 不可变) 序列,但我们可以对元组进行连接组合生成新的元组如:
>>>tup1=(12,34.56)
>>>tup2=('abc','xyz')
>>>tup3= tup1+tup2
>>>print tup3
(12,34.56,'abc','xyz')
任意无符号的对象,以逗号隔开,默认为元组。
字典是另一种可变容器模型,且可存储任意类型对象。
字典的每个键值(key=>value)对用冒号( : )分割,每个对之间用逗号( , )分割,整个字典包括在花括号( {}) 中 ,格式如下所示:
d= {key1:value1,key2:value2}
键必须是唯一的,但值则不必。
值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。
字典是可变类型,可以添加,删除,替换
⑼ python语言的三个主要特点
Python语言主要有以下几大特点:
1、简单易学:Python是一种代表简单主义思想的编程语言,阅读一个良好的Python程序的时候就犹如在读英语一样。Python最大的优势就是伪代码的本质,在开发的时候主要以解决问题为主要,并不是搞明白语言的本身。
2、面向对象:Python既是面向对象的编程,也是面向对象编程,与其他主要的语言C++和Java对比来说,Python是以一种非常强大而且简单的方式来实现面向对象的编程。
3、可移植性:Python具有开源的本质,可以被移植在许多的平台上,比如说Lnux、Windows、 FreeBSD、 Macintosh、
Solaris、OS/2、Amiga、AROS、AS/400等,Python都可以很好的运行其中。
4、解释性:Python语言写的程序不需要编译成为二进制的代码,可以直接从源代码运行程序,在计算机内部,Python解释器将源代码转换成为字节码的中间形式,可以直接翻译运行。
5、开源:Python语言是开源的。简单的来说,你可以自由发布这个软件的拷贝,阅读源代码,对它进行改动,用于新的自由软件之中。
6、高级语言:Python是高级编程语言,当使用Python进行编程的时候,无需考虑如何管理程序使用的内存一类的底层细节问题。
7、可扩展性:如果想要更快的运行,但是某些算法不公开,这个部分的程序可以选择用C语言进行编写,然后再Python程序中进行使用。
8、丰富的库:Python具有丰富强大的标准库,可以帮助你处理各种工作,其中包含了正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGl、FTP、电子邮件等,这些功能都是可以使用的,所以Python语言功能十分强大。
9、规范代码:在使用Python书写代码的时候采用强制缩进的方式让代码具有非常好的可读性。