python 简单剖析及语法基础
1、Python的应用领域
WEB开发 网络编程 爬虫 云计算 人工智能、数据分析 自动化运维 金融分析 科学运算 游戏开发
2、Python的发展前景
知乎上有一篇文章,问Python未来10年的发展前景,请去看一下金角大王Alex的回答
未来十年Python的前景会怎样?https://www.zhihu.com/question/22112542/answer/166053516
3、Python的优缺点
优点
1.Python程序看上去简单易懂,初学者学Python,不但入门容易,而且将来深入下去,可以编写那些非常非常复杂的程序。
2.开发效率非常高,Python有非常强大的第三方库,下载调用后,在基础库的基础上再进行开发,可大大降低开发周期。
3.跨平台——你的所有Python程序无需修改就几乎可以在市场上所有的系统平台上运行。
4.可扩展性————如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。
5.可嵌入性————你可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能。
缺点
1.速度慢
2.代码不能加密——因为PYTHON是解释性语言,它的源码都是以明文形式存放的。
3.线程不能多核——在Cpython中,内部有GIL即全局解释器锁(Global Interpreter Lock),是计算机程序设计语言解释器用于同步线程的工具,使得任何时刻仅有一个线程在执行。
4、变量
(1)变量名的命名规则
1.变量只能是数字、字母、下划线的任意组合。
2.变量的第一个字符不能是数字。
3.python的一些关键字不能用作变量名。
(2)常用的定义方式
驼峰体 ex: AgeOfOldBoy = 60 NumberOfStudents = 100
下划线 ex: age_of_oldboy = 60 number_of_students = 100
5.注释
代码注释分单行和多行注释, 单行注释用#
,多行注释可以用三对双引号""" """。
代码注释原则:
1.在自己认为重要的地方加注释,不需要每行都加。
2.单行注释时,符合pep8规范,即#离代码至少有两个空格,注释与#有一个空格的距离。
3.写注释是为了方便自己以及别人阅读你的代码,养成写注释的习惯。
6.数据类型
1.int(整型)——64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1。(**代表乘方)
2.long(长整型)——Python没有限制长整型的大小,理论上可以无限长,根据内存决定最大长度。在Python3之后就没有了长整型。
3.float(浮点型)——即小数。
4.字符串——加了引号的字符都是字符串。单引号和双引号基本没有区别,只有当在字符串中出现单引号或者双引号时要注意区别。
字符串的拼接
(1) 通过'+'拼接
ex: name = 'eric'
age = '22'
print(name+age)
运行结果: 'eric22'
(2)通过'*'
ex: name = 'eric'
print(name*5)
运行结果:'ericericericericericeric'
即‘*’的作用是复制自己多少次再进行拼接。
(3)字符串只能与字符串拼接,与别的数据类型拼接会报错,可以通过str()方法将其他的数据类型转换成字符串,再进行拼接。
7.读取用户指令
如果你的程序要接收用户指令可以用 input()方法。
ex: name = input("what is your name? ")
print(name)
运行:
>>> what is your name ? alex (用户输入)
运行结果:alex
注意:input方法只接收字符串,即使你输入的是数字,也会被转换成字符串。
8.格式化打印
ex:
name = 'alex'
age = '23'
sex='male'
print("%s 's age is %s , sex is %s' %(name,age,sex))
运行结果: alex's age is 23,sex is male
%s是字符串占位符 可以用这个符号暂时代替字符串变量写入字符串,在按照顺序,依次注明字符串变量。
这种方法叫做格式化打印,通过这种方法可以使输出看起来更美观。如:
user_ifo = ''' ---------------user info------------------
name:%s
age:%s
sex:%s
-------------------------------------------- ''' %(name,age,sex)
print(user_ifo)
运行结果: ---------------user info---------------------
name:alex
age:23
sex:male
----------------------------------------------
当变量为int时,用%d作占位符,变量为float时,用%f作占位符。
9.运算符
(1)算术运算
即+ ,-, *, /; **乘方;%取余,即取余数。
(2)比较运算
== : 判断两个对象是否相等。ex : a=10 b=20 ,那么(a==b)的结果就为False。注意:在作相等判断的时候一定要写两个等号,一个等号是赋值运算,写程序时的常见错误。
!=:判断两个对象是否不相等,不相等返回为True。 ex: a=10 b=20 , 那么(a!=b)的结果就为True。
>、<、>=、<=:一些常规的比较大小。
10.流程控制
(1) if.......else
单分支
if 条件:
满足条件执行代码
双分支
if 条件:
满足条件执行代码
else:
不满足条件执行代码
多分支
if 条件1:
满足条件1执行的代码
elif 条件2:
不满足条件1,但是满足条件2,执行的代码
elif 条件3:
同时满不足条件1,2 ,满足条件3,执行的代码
else:
同时不满足条件1,2,3 ,执行的代码
注意:if ,elif,else 下的代码段都必须向右缩进,缩进长度自己规定,一般缩进长度为四个空格,但所有代码缩进的长度必须一致。
缩进代表了这一部分代码实在该条件下的代码,只有在满足条件时才可以执行。
ex: age =12
if age >18 :
print(" l am an adult")
print(age)
运行这段代码,很明显就可以看出age是不满足条件的,因此不会执行if下的代码,那么age就是12。
如果代码变成了这样:
age=12
if age > 18 :
print("l am an adult ")
print(age)
这段代码和上一段代码的区别是if下面的代码没有缩进,那么运行结果就是
l am an adult
12
我们可以发现age并没有满足条件,但是l am an adult仍然打印了出来。
这是因为,当代码开始运行,运行到if语句的时候,进行判断发现不满足条件,就执行下一个语句,由于下面的print并没有缩进,所以计算机认为print语句和if语句没有关系,因此就正常执行。
(2) while 循环
语法
while 条件:
执行代码
while循环的运行规则是,先判断是否满足条件,满足则执行下面的代码;执行一遍以后,再进行判断,如果条件依然满足,则再次执行下面的代码,一次类推,直到执行完一次代码后发现条件不满足了,就跳出循环。
num = 0
while num >10:
num = num + 1
print(num)
上面这段代码,就是输出从1开始10以内的数,即1,2,3,4,5,6,7,8,9,10.
死循环:当while 循环的条件一直满足时,就是陷入死循环,程序就会一直执行下去。
循环终止语句
(1) break:跳出循环
当执行循环语句时,遇到break,那么不管循环的条件是否满足,都会跳出循环。
(2) continue:跳过本次循环,执行下一次循环。
num = 0
while num >10:
num = num + 1
continue
print(num)
如果程序是这样,那么当每一次执行到continue时,就会跳过print,直接执行下一次循环,所以结果就是循环完了,但是没有打印出来任何值。
while....else
num = 0
while num >10:
num = num + 1
print(num)
else:
print("done")
当循环正常结束时,会执行下面的else代码段的内容,即输出1-10 和done;
当循环被中止,或者遇到break时,就不会执行else代码段。
注: 以上内容部分参考自路飞学城。
python 简单剖析及语法基础的更多相关文章
- python运行以及入门语法基础
pycharm下载与使用 1.pycharm官网下载(直接到pycharm下载地址) http://www.jetbrains.com/pycharm/download/#section=window ...
- [Python]Python入门笔记:语法基础
Python笔记 一.基本语法 1.1 注释 文档注释: """contents""" 多行注释: ''' contents ''' 单行注 ...
- python语法基础笔记
本篇笔记基于博主自己的的学习,理解,总结所写.很多东西可能存在误解,不能保证百分之百的正确. 1. 数据表达1.1 常量和变量1.2 数据类型1.2.1 基本数据元素1.2.1.1 数字1.2.1.2 ...
- (数据分析)第02章 Python语法基础,IPython和Jupyter Notebooks.md
第2章 Python语法基础,IPython和Jupyter Notebooks 当我在2011年和2012年写作本书的第一版时,可用的学习Python数据分析的资源很少.这部分上是一个鸡和蛋的问题: ...
- Python | Python语法基础
目录 前言 1. 变量与简单数据结构 2. 列表相关 3. 集合 4. If语句 5. 字典 6. 用户输入和while循环 7. 函数 8. 类与对象 9. 文件 10. 异常 11. 测试 最后 ...
- 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍
一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...
- python基础入门一(语法基础)
作为自己正式接触并应用的第一门编程语言,在Alex和武sir两位大王的要求下,开始了写博客总结的日子.学习编程语言是很有趣的一件事情,但有2点请一定要谨记:1.做人靠自己,码代码也必须靠自己.能不能成 ...
- web前端学习python之第一章_基础语法(二)
web前端学习python之第一章_基础语法(二) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...
- web前端学习python之第一章_基础语法(一)
web前端学习python之第一章_基础语法(一) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...
- python 简单简绍以及简单的语法
一.Pthon介绍 Pyhton的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆在阿姆斯特丹打发时间,决心开发一款新的脚本解释程序,作为ABC语言的 ...
随机推荐
- Flink 和 Pulsar 的批流融合
简介: 如何通过 Apache Pulsar 原生的存储计算分离的架构提供批流融合的基础,以及 Apache Pulsar 如何与 Flink 结合,实现批流一体的计算. 简介:StreamNativ ...
- 使用 Flink Hudi 构建流式数据湖
简介: 本文介绍了 Flink Hudi 通过流计算对原有基于 mini-batch 的增量计算模型的不断优化演进. 本文介绍了 Flink Hudi 通过流计算对原有基于 mini-batch 的 ...
- [Go] Go Module 私有依赖包的管理
一些自研开发的第三方包,特别是一些业务依赖包,是不允许公开下载的(私有库),并且版本库也可能不支持HTTPS协议, 因此无法使用 go get 或者 go.mod 进行下载和管理,可以通过 GOPRI ...
- dotnet 修复 GitHub Action 构建过程提示 NETSDK1127 错误
本文告诉大家,如何修复 GitHub Action 构建过程提示 error NETSDK1127: The targeting pack Microsoft.WindowsDesktop.App.W ...
- 2018-8-10-WPF-使用-Direct2D1-画图入门
title author date CreateTime categories WPF 使用 Direct2D1 画图入门 lindexi 2018-08-10 19:16:53 +0800 2018 ...
- 数字电路中的等效电路和FPGA中的等效电路
欢迎各位朋友关注"郝旭帅电子设计团队",本微信公众号会定时更新相关技术类资料.软件等等,希望各位朋友都能在本微信公众号获得一些自己想要的"东西". 本篇内容主要 ...
- docker-compose搭建的Mysql主从复制
设置前注意下面几点: 1)要保证同步服务期间之间的网络联通.即能相互ping通,能使用对方授权信息连接到对方数据库(防火墙开放3306端口). 2)关闭selinux. 3)同步前,双方数据库中需要同 ...
- HTTP 结构概述
Web 客户端和服务器 Web 内容都是存储在 Web 服务器上的,Web 服务器所使用的是 HTTP 协议,因此经常被称为 HTTP 服务器,HTTP 服务器存储了因特网的数据.客户端向服务器发送 ...
- 🔥fastposter v2.19.0 一款很哇塞的海报生成器
fastposter v2.19.0 一款很哇塞的海报生成器 fastposter 是一款快速开发海报的工具,已经服务众多电商.分销系统.电商海报.电商主图.行业海报等海报生成和制作场景. 什么是 f ...
- js不同类型比较
有布尔 先把布尔转为number 数字和字符串 字符串转number,如果前导为0会被忽略,空字符串转换成0,非数字字符串或其他转为NaN 对象和非对象 对象valueOf获取基本类型,对象转为字符串 ...