标签:简单的 core count 2.4 utf-8 inf continue 规则 python解释器
python基础一
一、python历史
python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。
(龟叔:2005年加入谷歌至2012年,2013年加入Dropbox直到现在,依然掌握着Python发展的核心方向,被称为仁慈的独裁者)。
二、python发展史
三、语言划分
编译型:将你的代码一次性全部编译成二进制,然后在运行。
缺点:开发效率低,不能跨平台。
优点:执行效率高。
代表:c
解释型:当程序开始运行时,将代码一行一行的解释成二进制(随声翻译),执行。
缺点:执行效率低。
优点:开发效率高,可以跨品台。
代表:python
五、python的种类
1、CPython
当我们从Python官方网站下载并安装好Python 3.6后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python就是启动CPython解释器。
CPython是使用最广的Python解释器。教程的所有代码也都在CPython下执行。
2、IPython
IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。
CPython用>>>作为提示符,而IPython用In [序号]:作为提示符。
3、PyPy
PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。
绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解PyPy和CPython的不同点。
4、Jython
Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。
5、IronPython
IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。
小结:
Python的解释器很多,但使用最广泛的还是CPython。如果要和Java或.Net平台交互,最好的办法不是用Jython或IronPython,而是通过网络调用来交互,确保各程序之间的独立性。
六、python的基础知识
1、运行需要有执行权限、解释器
#!/usr/bin/env python # -*- encoding:utf-8 -*-
2、注释
当行注释:# 被注释内容
多行注释:‘‘‘被注释内容‘‘‘,或者"""被注释内容"""
3、变量
变量是什么? 变量:把程序运行的中间结果临时的存在内存里,以便后续的代码调用。
#变量赋值
#一个等号是赋值 两个等号是等于 #!/usr/bin/env python # -*- coding: utf-8 -*- name1 = "wupeiqi" name2 = "alex"
变量规则:
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,变量要具有可描述性。
name,age,fdasgfdas
5,变量不能使用中文。
6,变量不能过长 定义方式 驼峰体 加下划线
AgeOfOldboy = 56
NumberOfStudents = 80
#下划线
age_of_oldboy = 56
number_of_students = 80
4、常量
#常量:一直不变的量。π,新中国成立 1949101 #约定俗成全部大写的变量为常量。放到文件最上面。
5、基础数据类型
int:数字:计算。+ = * / % // .....
str:python中用引号引起来的就叫做字符串(‘‘ "")。
type(对象) 是什么数据类型
用处:储存简单的少量数据。
+ *
+ 字符串的拼接。
* str* int
bool: True,Flase
#type() 查看类型
print(666,type(666)) print(‘666‘,type(‘666‘)) msg = "My name is Alex , I‘m 56 years old!" msg = ‘‘‘ 今天我想写首小诗, 歌颂我的同桌, 你看他那乌黑的短发, 好像一只炸毛鸡。 ‘‘‘ print(msg)
#字符串拼接 a = ‘老男孩 ‘ b = ‘是最好的培训机构‘ c = a + b #相加其实就是简单拼接
print(c) print(‘坚强‘*8) print(2 > 1)
#相乘其实就是复制自己多少次,再拼接在一起
6、用户交互(input)
input 出来的数据类型全部是字符串。 name = input(‘请输入您的姓名:‘) sex = input(‘请输入您的性别:‘) print(‘我的名字是‘ + name,‘我的性别是‘ + sex)
7、格式化输出
#格式化输出 % 占位符 s(字符串) d(数字)
,,,
格式强转 前提
ps str -- > int str全部由数字组成 ‘1234’
ps int -- > str str(int)
,,,
#第一种表现形式: 以元组的形式替换
name = input(‘请输入你的名字:‘)
age = input(‘请输入你的年龄:‘)
job = input(‘请输入你的工作:‘)
hobby = input(‘请输入你的爱好:‘)
msg1 = ‘‘‘ ------------ info of %s -----------
Name : %s
Age : %d
job : %s
Hobbie: %s
------------- end -----------------
‘‘‘ % (name,name,int(age),job,hobby) #int() 强转为数字类型
print(msg1)
#第二种方法: 以字典的方式替换
dic = {‘name‘:‘老男孩‘,‘age‘:45,‘job‘:‘Teacher‘,‘hobby‘:‘吹‘}
msg1 = ‘‘‘ ------------ info of %(name)s -----------
Name : %(name)s
Age : %(age)d
job : %(job)s
Hobbie: %(hobby)s
------------- end -----------------
‘‘‘ % dic
print(msg1)
#单纯只显示%号 ,前面加%转义
msg2 = ‘我叫%s,今年%s,学习进度5%%‘ % (‘太白‘,23)
print(msg2)
7、if语句
假如把写程序比做走路,那我们到现在为止,一直走的都是直路,还没遇到过分叉口,想象现实中,你遇到了分叉口,然后你决定往哪拐必然是有所动机的。你要判断那条岔路是你真正要走的路,如果我们想让程序也能处理这样的判断怎么办? 很简单,只需要在程序里预设一些条件判断语句,满足哪个条件,就走哪条岔路。这个过程就叫流程控制。
if...else 语句
#单分支
if 条件:
满足条件后要执行的代码
#双分支
"""
if 条件:
满足条件执行代码
else:
if条件不满足就走这段
"""
AgeOfOldboy = 48
if AgeOfOldboy > 50 :
print("Too old, time to retire..")
else:
print("还能折腾几年!")
#多分支
,,,
if 条件:
满足条件执行代码
elif 条件:
上面的条件不满足就走这个
elif 条件:
上面的条件不满足就走这个
elif 条件:
上面的条件不满足就走这个
else:
上面所有的条件不满足就走这段
,,,
num = int(input(‘猜一下数字:‘))
if num == 6:
print(‘请你吃饭‘)
elif num == 3:
print(‘请你喝酒‘)
elif num == 1:
print(‘请你大保健‘)
4 多种条件必选一个结果
num = int(input(‘猜一下数字:‘))
if num == 6:
print(‘请你吃饭‘)
elif num == 3:
print(‘请你喝酒‘)
elif num == 1:
print(‘请你大保健‘)
else:
print(‘没机会了.....‘)
score = int(input("输入分数:"))
if score > 100:
print("我擦,最高分才100...")
elif score >= 90:
print("A")
elif score >= 60:
print("C")
elif score >= 80:
print("B")
elif score >= 40:
print("D")
else:
print("太笨了...E")
#这里有个问题,就是当我输入95的时候 ,它打印的结果是A,但是95 明明也大于第二个条件elif score >=80:呀, 为什么不打印B呢?这是因为代码是从上到下依次判断,只要满足一个,就不会再往下走啦,这一点一定要清楚呀!
8、while 循环
while 条件:
# 循环体
# 如果条件为真,那么循环体则执行
# 如果条件为假,那么循环体不执行
9、循环中止语句
如果在循环的过程中,因为某些原因,你不想继续循环了,怎么把它中止掉呢?这就用到break 或 continue 语句
#如何终止循环:
#1,改变条件。
#2,break
count = 1
while count <= 100:
print(count)
count = count + 1 # count += 1 跟前式相同
count = 1
flag = True
while flag:
print(count)
count = count + 1
if count == 101:
flag = False
count = 1
sum = 0
while count < 101:
sum = sum +count
count += 1
print(sum)
#while 关键字:break,continue
#break 结束循环。
#continue 跳出本次循环,继续下一次循环。
while True:
print(333)
print(5455)
print(222)
break
print(888)
print(666)
while True:
print(333)
print(222)
continue
print(888)
print(666)
#while else:如果while循环,被break打断,则不走else
count = 1
while count < 5:
print(count)
count += 1
else:
print(‘循环正常完毕‘)
10、运算符
算数运算

比较运算

赋值运算

逻辑运算

在没有()的情况下not 优先级高于 and,and优先级高于or,即优先级关系为( )>not>and>or,同一优先级从左往右计算。
1,3>4 or 4<3 and 1==1 2,1 < 2 and 3 < 4 or 1>2 3,2 > 1 and 3 < 4 or 4 > 5 and 2 < 1 4,1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8 5,1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6 6,not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6
七、python2 跟 python3的区别
1、Python2x:源码重复,不规范
python3x:整合源码,更清晰简单优美。
2、Python2x:默认的编码是ascii,
解决方式:# -*- encoding:utf-8 -*-
Python3x:默认的编码是utf-8
3、Python2x:long int
print ‘abc‘ print(‘abc‘)
Python3x:无long int
print(‘abc‘)
4、Python2x:raw_input()
input() 只能输入数字类型
Python3x:input
八、相关练习
#1、使用while循环输入 1 2 3 4 5 6 8 9 10
n = 0
while n <= 10:
n += 1
if n == 7: continue
print(n,end=" ")
#2、求1-100的所有数的和
num = 1
Sum = 0
while num < 101:
Sum = Sum + num
num += 1
print(Sum)
#3、输出 1-100 内的所有奇数
for i in range(1,100,2):
print(i,end=" ")
#4、输出 1-100 内的所有偶数
for i in range(0,100,2):
print(i,end=" ")
#5、求1-2+3-4+5 ... 99的所有数的和
1、sum1 = 0
sum2 = 0
for i in range(1,100,2):
sum1 = sum1 + i
for o in range(0,100,2):
sum2 = sum2 + o
print(sum1 - sum2)
2、print(sum([x if x%2 == 1 else -x for x in range(1, 100)]))
3、
num = 0
for i in range(100):
if i%2 == 1:
num += i
else:
num -= i
print(num)
标签:简单的 core count 2.4 utf-8 inf continue 规则 python解释器
原文地址:https://www.cnblogs.com/dacheng-tony/p/8888984.html