标签:简单的 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