Python之路Day1

 内容大纲                                                                                                     

1.初识计算机
2.初识python
3.python的发展史及影响
4.python的语言分类
5.Python的种类
6.变量
7.常量
8.注释
9.基础数据类型(int/str/bool)
10.input用户输入
11.if结构
12.while结构

&1.初识计算机

CPU:计算机大脑,负责计算;

内存:临时存储;

硬盘:永久存储;

操作系统:管理计算机硬件资源,控制其他程序运行并为用户提供交互操作界面的系统软件的集合。
&2.初识python
python之父:吉多·范罗苏姆(Guido van Rossum)。
python地位:2017年7月的TIOBE排行榜,Python已经占据第四的位置, Python崇尚优美、清晰、简
                     单,是一个优秀并广泛使用的语言。
python应用领域:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。
                            目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Quora(中国
                            知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、汽车之家、美团等。
&3.python的发展史及影响
       1989年,为了打发圣诞节假期,Guido开始写Python语言的编译器。Python这个名字,来自Guido所
挚爱的电视剧Monty Python’s Flying Circus。他希望这个新的叫做Python的语言,能符合他的理
想:创造一种C和shell之间,功能全面,易学易用,可拓展的语言。
      1991年,第一个Python编译器诞生。它是用C语言实现的,并能够调用C语言的库文件。从一出生,
       Python已经具有了:类,函数,异常处理,包含表和词典在内的核心数据类型,以及模块为基础的
拓展系统。
       Granddaddy of Python web frameworks, Zope 1 was released in 1999
Python 1.0 - January 1994 增加了 lambda, map, filter and reduce.
Python 2.0 - October 16, 2000,加入了内存回收机制,构成了现在Python语言框架的基础
Python 2.4 - November 30, 2004, 同年目前最流行的WEB框架Django 诞生
Python 2.5 - September 19, 2006
Python 2.6 - October 1, 2008
Python 2.7 - July 3, 2010
In November 2014, it was announced that Python 2.7 would be supported until 2020, and
reaffirmed that there would be no 2.8 release as users were expected to move to Python
3.4+ as soon as possible
Python 3.0 - December 3, 2008
Python 3.1 - June 27, 2009
Python 3.2 - February 20, 2011
ython 3.3 - September 29, 2012
Python 3.4 - March 16, 2014
Python 3.5 - September 13, 2015
Python 3.6 - December 16,2016

python语言特点:优美,简单,清晰。
python2与3一大区别:
python2.X:源码不规范,混乱,重复代码较多;
python3.X:重整源码,源码规范,优美简单清晰。
&4.python的语言分类
4.1 编译型语言
将代码一次性全部编译成二进制,然后再运行;
优点:执行效率高;
缺点:开发效率低,不能跨平台。
代表语言:C语言。
4.2 解释型语言
代码逐行解释,解释成二进制,然后运行。
优点:开发效率高,第三方库,可以跨平台;
缺点:执行效率低。
代表语言:python。

python的语言种类是编译型语言。
&5.python分类
CPython
        当我们从Python官方网站下载并安装好Python 3.6后,我们就直接获得了一个官方版本的解
释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python就是
启动CPython解释器。
        CPython是使用最广的Python解释器。教程的所有代码也都在CPython下执行。
IPython
  IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所
增强,但是执行Python代码的功能和CPython是完全一样的。好比很多国产浏览器虽然外观不
同,但内核其实都是调用了IE。
  CPython用>>>作为提示符,而IPython用In [序号]:作为提示符。
PyPy
  PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动
态编译(注意不是解释),所以可以显著提高Python代码的执行速度。
  绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相
同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,
就需要了解PyPy和CPython的不同点。
Jython
  Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。
IronPython
  IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以
直接把Python代码编译成.Net的字节码。

小结:
  Python的解释器很多,但使用最广泛的还是CPython。如果要和Java或.Net平台交互,最好的
办法不是用Jython或IronPython,而是通过网络调用来交互,确保各程序之间的独立性。
&6.变量
6.1 声明变量

name = "david" #声明变量name,变量的值为"david"
print(name)

6.2 变量命名规则
只能以字母、数字、下划线组合而成;
不能以数字开头;
不能以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']
变量名不宜过长;
变量名应具有描述性。
6.3 推荐变量名定义方式

age_of_boy = 22 #具有描述性的词汇组成,词汇间用下划线连接。

6.4 变量的赋值

name = "david"
name1 = "david"
name2 = name1

&7.常量
常量即指不变的量,如pai 3.141592653..., 或在程序运行过程中不会改变的量。

举例,假如老男孩老师的年龄会变,那这就是个变量,但在一些情况下,他的年
龄不会变了,那就是常量。在Python中没有一个专门的语法代表常量,程序员约
定俗成用变量名全部大写代表常量。
如:NAME = "david"
&8.注释
注释的两种方式:
方式一:代码后 #注释内容
方式二:整体注释: ''' 内容 '''
&9.基础数据类型(int/str/bool)
int:整形
str: 字符串
bool:布尔值(True/False)
字符串可加,可乘(字符串乘以数字) 例题:字符串的拼接,和数字相乘

msg1 = "世界上最帅的男人是"
msg2 = "david!"
print(msg1 + msg2.title()) #字符串的拼接
msg = "坚强"
print(msg * 8) #字符串乘以数字

&10.input用户输入

name = input("请输入姓名:")
age = input("请输入年龄:") #注意:输出为字符串类型
print(name,age,type(name),type(age))

&11.if结构
11.1 结构一 if...

if 3 > 2:
  print(666)
  print(333)

11.2 结构二 if...else

name = input("请输入暗号:")
if name == "天王盖地虎":
    print("宝塔镇河妖")
else:
    print("留下狗命来!")

11.3 结构三 if...elif...

number = int(input("请猜猜看是数字:"))
if number == 4:
    print("早饭我请!")
elif number == 5:
    print("中饭我请!")
elif number == 6:
    print("晚饭我请!")

11.4 结构四 if...elif...else

number = int(input("请猜猜看是数字:"))
if number == 4:
    print("早饭我请!")
elif number == 5:
    print("中饭我请!")
elif number == 6:
    print("晚饭我请!")
else:
    print("你来请吃一天饭!")

11.5 结构五 嵌套

number1 = int(input("请猜猜看是第一个数字:"))
if number1 == 3:
    print("66666...")
    number2 = int(input("请猜猜看是第二个数字:"))
    if number2 == 6:
            print("你真是太厉害了!")
    else:
            print("有点可惜哦!")                

例题:输入95,结果是?

score = int(input("输入分数:"))
if score > 100:
    print("我擦,最高分才100...")
elif score >= 80:
    print("B")
elif score >= 90:
    print("A")
elif score >= 60:
    print("C")
elif score >= 40:
    print("D")
else:
    print("太笨了...E")

结果是B,原因:程序由上到下逐行执行,先执行

elif score >= 80:
    print("B")

&12.while结构
while True:
循环体

若要终止循环,两个方法:
1.改变条件,让条件变成False;
2.break(直接结束循环。)
两个关键字:break,
continue,结束本次循环,继续下一次循环。
例题一

while True:
    print("凉凉")
    print("起风了")
    print("空空如也") #程序不会停止
while True:
    print("凉凉")
    print("起风了")
    print("空空如也")
    break #由上到下执行遇到break终止循环
flag = True
while flag:
    print("凉凉")
    print("起风了")
    print("空空如也")
    flag = False #改变条件,让条件变成False

例题二 打印数字1到100
方法一:

count = 1
flag = True
while flag:
    print(count)
    count += 1
    if count == 101:
        flag = False    

方法二:

count = 1
while count < 101:
    print(count)
    count += 1

例题三 打印1到100的偶数
方法一

count = 1
while count < 101:
    if count % 2 == 0:
    print(count)
    count += 1

方法二

count = 0
while count < 100:
    count += 2
    print(count)

例题四 判断题

while True:
    print(111)
    print(222)
    break #循环终止,跳出循环
    print(333)
    print(666)

输出111 222 666

while True:
    print(111)
    print(222)
    continue #直接回到条件再次判断,执行循环 
    print(333)
    print(666)

#永远循环 111 222 111 222
例题五 计算1到100的和

count = 1
sum = 0
while True:
    sum += count
    count += 1
    if count == 101:break
print(sum)

 

猜你喜欢

转载自www.cnblogs.com/zzw1127/p/8951401.html