Python之路(第一篇):Python简介和基础
一、开发简介
1、开发:
开发语言:
高级语言:python、JAVA、PHP、C#、、ruby、Go--》字节码
低级语言:C、汇编--》机器码
2、语言之间的对比:
PHP类:适用于写网页,局限性
JAVA\Python:可以写网页,也可以写后台
JAVA执行效率高,开发效率低
Python 执行效率低,开发效率高
3、Python种类:
JPython
Cpython
IronPython
JavaScriptPython
RubyPython
...
pypy 这是用CPython开发的Python
一般学习的Python都是指CPython
IronPython 是一种在 NET 和 Mono 上实现的 Python 语言
Jython是一种完整的语言,而不是一个Java翻译器或仅仅是一个Python编译器,它是一个Python语言在Java中的完全实现。
CPython是特指C语言实现的Python,就是原汁原味的Python。一般我们学习的都是这个。
PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。简单来说就是python1编写的代码,第一次给python2去执行,然后python2得到python1编写代码的机器码,第二次运行同样的python1的代码,python2就直接执行机器码了,所以运行速度会提高。

4、安装:
Python安装在OS上,
执行操作
写一个文件,按照python的规则写,将文件交给python,
软件读取文件内容,然后转换和执行,最终获取结果。
python软件 ==>Python解释器(内存管理)
5、下载说明:
python3
pyrhon3不向下兼容python2,在继续更新,
python2
在继续更新,在越来越向python3转换
6、机器码和字节码
机器码是计算机能够识别的东西,是电脑的CPU可直接解读的数据。
字节码是一种包含执行程序、由一序列 op 代码/数据对 组成的二进制文件。字节码是一种中间码,它比机器码更抽象,需要直译器转译后才能成为机器码的中间代码。
二、Python基础
1、第一句python
print(“hello world”)
2、 编码
# -*- coding:utf8 -*-
Python3中无需关注# -*- coding:utf8 -*-
Python2中,只要出现中文,头部必须写这一句,因为python2默认用ASCII编码,只支持英文,出现中文会显示乱码
3、变量名
- 可以由字母、数字、下划线组成, 最好不好和python内置的东西重复,标识符、保留字等
数字不能开头 ,不能是关键字。
- 以下关键字不能声明为变量名
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
- 内置函数和类也不能用做变量名
4、多行注释用
"""
代码内容
"""
三个引号即可注释多行内容
5、条件语句
缩进用4个空格,一般按TAB键即可实现
(1)复杂嵌套语句
if 条件表达式1:
功能代码1
if 条件表达式2:
功能代码2
else:
功能代码3
else:
功能代码4
(2)多条件判断
if 条件表达式1:
功能代码1
elif 条件表达式2:
功能代码2
elif 条件表达式3:
功能代码3
else:
功能代码4
( 3 ) and or条件
if 条件表达式1 and 条件表达式2 :
功能代码1
else:
功能代码2
>功能代码如果写成pass,表示什么都不执行
6、基本数据类型
a、字符串
引号引起来的都称之为字符串,
(1)字符串里的加法
n1 = 'hello'
n2 = 'world'
n3 = n1 + n2
print(n3)
输出结果:
helloworld
(2)字符串里的乘法
n1 = 'hello'
n2 = n1 * 5
print(n2)
输出结果
hellohellohellohellohello
b、数字运算符
n1 = 8
n2 = 2
(1)加
n3 = n1 + n2
(2)减
n3 = n2 - n1
(3)乘
n3 = n1 * n2
(4)除
n3 = n2 / n1
(5)次方(幂)
n3 = 2 **4
2的4次方
(6)取余
n3 = 39 % 8
对39除以8取余数 即39/8=4余7 , 4*8=32, 39-32= 7.
(7)取整数商
n3 = 39 //8
对39除以8取整数商,即只要商的整数部分4
7、循环
a、死循环
while 1 = 1:
print("ok")
此程序将一直输出ok
b、while 条件循环
import time
count = 0
while count < 10 :
print("ok",time.time())
count = count +1
print("123")
练习
1、使用while循环输入 1 2 3 4 5 6 8 9 10
n = 1
while n < 11:
if n == 7 :
pass
else:
print(n)
n = n + 1
注意n = n + 1要与if、else语句对齐,不然无法输出8、9、10
2、求1-100的所有数的和
n = 1
s = 0
while n < 101:
s = s + n
n = n + 1
print(s)
3、输出 1-100 内的所有奇数
n = 1
while n < 101:
if n % 2 == 1 :
print(n)
else:
pass
n = n + 1
4、输出 1-100 内的所有偶数
n = 1
while n < 101:
if n % 2 == 0 :
print(n)
else:
pass
n = n + 1
5、求1-2+3-4+5 ... 99的所有数的和
n = 1
s1 = 0
s2 = 0
while n < 100:
if n % 2 == 1 :
s1 = s1 + n
else:
s2 = s2 + n
n = n + 1
s = s1 -s2
print(s)
或者
n = 1
s = 0 # s是之前所有数的总和
while n < 100:
temp = n % 2
if temp == 0:
s = s - n
else:
s = s + n
n = n + 1
print(s)
这里可以理解为搭积木
(1)当全部为正数求和时
sum = sum + n
最开始积木塔(sum)为0
来了一块积木1,积木塔马上加上1,
来了一块积木2,积木塔马上加上2,
以此类推
sum = sum + n
(2)当奇数为正,偶数为负
偶数为负也可以理解为减法,即抽掉
同样的,最开始积木塔(sum)为0
来了一块积木1,积木塔马上加上1,
要抽掉一块积木2,积木塔马上减去2
来了一块积木3,积木塔马上加上3,
要抽掉一块积木4,积木塔马上减去4,
以此类推
奇数时
sum = sum + n
偶数时
sum = sum - n
6、用户登录用户登陆(三次机会重试)
name = input("请输入账户名:")
passwd = input("请输入密码:")
count = 1
while count < 3:
if name != 'nicholas' or passwd != '123':
print ("账户名或者密码输入错误!请重新输入!")
name = input("请输入账户名:")
passwd = input("请输入密码:")
elif name == 'nicholas' and passwd == '123':
print ("登录成功!")
break
count = count + 1
else:
print("三次未能成功登录,登录失败!")
精简代码
count = 0
while count < 3:
name = input("请输入账户名:")
passwd = input("请输入密码:")
if name == 'nicholas' and passwd == '123':
print ("登录成功!")
break
else:
print ("账户名或者密码输入错误!请重新输入!")
count = count + 1
else:
print("三次未能成功登录,登录失败!")
Python之路(第一篇):Python简介和基础的更多相关文章
- python之路第一篇
一.python环境的搭建 1.window下环境的搭建 (1).在 https://www.python.org/downloads/ 下载自己系统所需要的python版本 (2).安装python ...
- Python之路(第九篇)Python文件操作
一.文件的操作 文件句柄 = open('文件路径+文件名', '模式') 例子 f = open("test.txt","r",encoding = “utf ...
- Python开发【第一篇】:目录
本系列博文包含 Python基础.前端开发.Web框架.缓存以及队列等,希望可以给正在学习编程的童鞋提供一点帮助!!! Python开发[第一篇]:目录 Python开发[第二篇]:初识Python ...
- Python开发【第一篇】:目录
本系列博文包含Python基础.前端开发.Web框架.缓存以及队列等,希望可以给正在学习Python编程的朋友们提供一点帮助! .Python开发[第一篇]:目录 .Python开发[第二篇]:初始P ...
- .NET持续集成与自动化部署之路第一篇——半天搭建你的Jenkins持续集成与自动化部署系统
.NET持续集成与自动化部署之路第一篇(半天搭建你的Jenkins持续集成与自动化部署系统) 前言 相信每一位程序员都经历过深夜加班上线的痛苦!而作为一个加班上线如家常便饭的码农,更是深感其痛 ...
- SAP-ABAP系列 第一篇SAP简介
第一篇 SAP简介 SAP全名为System Application and Products in Data Processing.SAP目前是全世界排名第一的RP软件,号称“全球最大的企业管理解决 ...
- Python自动化 【第一篇】:Python简介和入门
Python简介: 一.什么是python Python是一门动态解释性的强类型定义语言. pythonde 特点:“优雅”.“明确”.“简单”. 二.Python由来 python的创始人为吉多·范 ...
- Python之路第一课Day9--随堂笔记之二(进程、线程、协程篇)
本节内容 进程.与线程区别 python GIL全局解释器锁 线程 语法 join 线程锁之Lock\Rlock\信号量 将线程变为守护进程 Event事件 queue队列 生产者消费者模型 Queu ...
- Python学习【第一篇】Python简介
Python简介 Python前世今生 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. 现在,全世界差不多有600多种编 ...
随机推荐
- git flow分支管理
阅读目录 两种核心分支 三种临时分支 Git Flow流程示例代码 Git Flow工具 分支命名规范 总结 git flow是Vincent Driessen提出了一个分支管理的策略,非常值得借鉴. ...
- 关于Android file.createNewFile() 失败的问题
[关于Android file.createNewFile() 失败的问题] 需要注意的是:要先对设计的文件路径创建文件夹 , 然后在对文件进行创建. 参考:http://blog.csdn.net/ ...
- awk技巧 nginx access.log
1.1 介绍 awk其名称得自于它的创始人 Alfred Aho .Peter Weinberger 和 Brian Kernighan 姓氏的首个字母.实际上 AWK 的确拥有自己的语言: AWK ...
- numpy 之矩阵的认知
di numpy 矩阵的创建与应用 可以用np.mat(a) 将a转变成矩阵 矩阵的加减法和 array相同 矩阵的乘法,如果矩阵要相乘的话就要A矩阵的行数,和B矩阵的列数相同才可以 这是查看数组不重 ...
- ZOJ2018/4月月赛G题Traffic Light(广搜)
题意:首先T组数据,每组数据包括:第一行:一个n,m,然后下面有一个n行m列的01矩阵. 最后一行输入四个数字,分别是起点的横纵坐标,终点的横纵坐标.询问从起点到终点,最少要几步,如果到不了输出-1 ...
- Disruptor并发框架简介
Martin Fowler在自己网站上写一篇LMAX架构的文章,在文章中他介绍了LMAX是一种新型零售金额交易平台,它能够以很低的延迟产生大量交易.这个系统是建立在JVM平台上,其核心是一个业务逻辑处 ...
- [剑指Offer]48-最长不含重复字符的子字符串(递归思想,循环实现)
题意 如题,字符串只含a-z,输出该子串长度.例:"arabcacfr",输出4. 解题思路 递归思想 计f(i)为以第i个字符结尾的最长不含重复字符的子串长度. 状态转移:计d为 ...
- c++ sizeof,strlen, length
#include <map>#include <iostream>#include <algorithm>#include <functional>#i ...
- f5基本介绍
1.信息查看 1)登录: https://10.160.100.10 f5有2台,做HA IP地址分别为10.160.100.3和10.160.100.2 10.160.100.10为虚拟地址 2)基 ...
- Myeclipse安装完配置
1.Window --> preferences --> 搜索tomcat --> Tomcat7.x --> 选择Enable并导入tomcat所在目录2.Window -- ...