Python基础1

一:python的由来和发展

  1989年,为了打发圣诞节假期,Guido开始写Python语言的编译器。Python这个名字,来自Guido所挚爱的电视剧Monty Python’s Flying Circus。他希望这个新的叫做Python的语言,能符合他的理想:创造一种C和shell之间,功能全面,易学易用,可拓展的语言。

  2017年7月的TIOBE排行榜,Python已经占据第四的位置, Python崇尚优美、清晰、简单,是一个优秀并广泛使用的语言。Python可以应用于众多领域,如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、汽车之家、美团等

 二: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的字节码。

三:Python2与Python3的区别

python2:

1,源码都含有php,Java,C,等语言的规范陋习,

2,重复代码特别多.

python3:

源码很规范,清晰,简单,符合python的宗旨.

四:解释型与编译型语言的区别及优缺点

(1)解释型:解释性语言的程序不需要编译,省了道工序,解释性语言在运行程序的时候才翻译 。每个语句都是执行的时候才翻译,这样解释性语言每执行一次就要翻译一次,执行效率比较低。比如:python,php。它的优点就是开发速度快,可以跨平台。缺点是执行效率慢。

(2)编译型:编译型语言在程序执行之前,有一个单独的编译过程,将程序翻译成机器语言,以后执行这个程序的时候,就不用再进行翻译了。比如C,C++等它的优点就是执行效率快,缺点就是开发速度慢,不能跨平台。

五:变量

变量:将运算的中间结果暂存到内存,以便后续程序调用.

变量的规则:

1,变量是由数字,字母,下划线,任意组合。

2,变量不能以数字开头。

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,变量名不能由中文表示。

六:注释

便于别人,或者自己理解.单行注释:#多行注释:'''被注释内容'''  """被注释内容"""

七: 基础数据类型(初识).

数字:int

取值范围:32位 64位在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647

在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,-9223372036854775808~9223372036854775807主要用于计算:+-*/ ** % //.....

字符串:str

在Python中,凡是用引号引起来的,全是字符串

布尔值:bool

八:用户交互.input

name = input('请输入名字:')
age = input('请输入年龄:')
print(type(age))
hobby = input('请输入你的爱好:')
print('我叫'+name,'今年'+age,'爱好'+hobby)

python3  input;python2  raw_input

九:if语句

第一种:

if 条件:
  结果

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

第二种

name = input('请输入名字:')
if name == 'alexsb':
    print(name)
else:print('请重新输入')

第三种

num_guess = input('请输入数字')
if num_guess == '1':
    print('去吃饭')
elif num_guess == '3':
    print('请你喝酒')
elif num_guess == '5':
    print('大宝剑')
else:
    print('你傻不傻....')

第四种

name = 'alex' 
if name == 'alex':
    print('666')
elif name == 'alex':
    print(111)

第五种:嵌套

name = 'alex'
if 3 > 2:
    if name == 'alex':
        print(666)
    else:print(111)
print(222)

 成绩匹配代码:

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

十:while循环

比如:设计程序:打印1,2,3.....100

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

或者

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

while,,,else

while,,,else 中若有break,  则直接跳出while,,,else;    若没有break, 则while循环结束后,再执行else。

i = 1
while i < 4:
    print(i)
    if i == 2:
        break
    i += 1
else:
    print('正常循环完毕')

 

十一:continue关键字

比如打印1,2,3,4,5,6,8,9,10,源代码如下:

count = 1
while count < 11:
    if count == 7:
        count = count + 1
        continue
    else:
        print(count)
    count = count + 1

 十二:break关键字

利用break关键字打印1--100,源代码如下:

start = 1
while True:
    print(start)
    start = start + 1
    if start == 100:
        print(start)
        break

 

 相关练习题如下:

1,使用while循环输入1,2,3,4,5,6,8,9,10

start = 1
while start < 11:
    if start == 7:
        pass
    else:
        print(start)
    start = start + 1
View Code

2,求1 - 100的所有数的和

sum = 0
start = 0
while start < 100:
    start = start + 1
    sum = sum + start
print(sum)
View Code

3,输出1 - 100内的所有奇数

start = 1
while start < 101:
    if start%2 == 1:
        print(start)
        start=start+1
    else:
        start = start + 1
View Code

4,输出1 - 100内所有的偶数

start = 1
while start < 101:
    if start%2 == 0:
        print(start)
        start=start+1
    else:
        start=start+1
View Code

5,求1-2+3-4+5…99的所有数的和

sum=0
start=0
while start < 99:
    start=start+1
    if start%2 == 1:
        sum=sum+start
    else:
        sum=sum-start
print(sum)    
View Code

6,用户登录(三次机会重试)

start = 0
while start<3:
    name = input("请输入用户名:")
    password = input("请输入密码:")
    if name == "hello" and password == "666":
        break
    else:
        start=start+1
        print("用户名或密码输入错误,请重新输入")
print("用户名和密码输入正确")
View Code

 

 

 

 

 

 

posted @ 2018-01-23 08:09  扬帆起航111  阅读(191)  评论(0编辑  收藏  举报