03-标识符和语言类型
目录
一、Python基础
1.1、Python解释器
- 官方CPython
- C语言开发,最广泛的Python编辑器
- IPython
- 一个交互式、功能增强的Cpython
- Pypy
- Python语言写的Python编辑器,JIT技术,动态编译Python代码
- Jython
- Python的源代码编译成Java的字节码,跑在JVM上
- IronPython
- 与Jkthon类似,运行在.NET平台上的解释器,Python代码被编译成.Net的字节码
二、Python基础语法
- 进制
口诀:
二进制看不到二
四进制看不到四
八进制看不到八
十进制看不到十
二进制
0 1 10
00 01 10 11 100
------------------
0 1 2 3 4
在python中描述二进制是惯性的在数字前加一个0b# 例如:0b10
八进制
0 1 2 3 4 5 6 7 10 11 12
十进制
0 1 2 3 4 5 6 7 8 9 10 11
十六进制
0 1 2 3 4 5 6 7 8 9 A B C D E F 10
-----------------------------------------
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
二进制
1111
8421 = 十六进制的15 F
1001 = 等于十进制的9
1000 = 2**3 8
0100 = 2**2 4
0010 = 2**1 2
0001 = 2**0 1
八进制 0o12 = 1*8**1 + 2*8**0 + 2=十进制的10
十六进制 0x10 = 1*16**1 + 0*8**0 = 十进制的16
----------------------------
二进制八进制十六进制转换
chmod 777 为八进制
111 111 111
0b1111 二进制四位 16种变换
0 1 2**1
00 01 10 11 2**2
000 001 010 011 100 110 101 111 2**3
4位的话就是 2**4 = 16种变化
一个字节byte 8位 00000000~11111111 0~255 256种变化
对于二进制来讲最末一位是1,他一定是奇数
11 3
111 7
1111 15
1*2**n
二级进制十,输出位十进制的十
2.1、基础语法格式
2.2.1、注释、数字、字符串
- 注释:# 标注的文本
- 数字:
- 整数,不区分long和init
- 进制0xa,0o10,0b10
- bool,2个值True、False (python种必须大写)
- 浮点数
- 1.2、3.1415、-0.12、146e9等价于1.46*109
- 复数:1+2j
- 字符串
- 使用' " 单双引号引用的字符的序列
- ' " "' 单双三引号,可以跨行、可以在其中自由的使用单引号
- 在字符前面加上r或者R前缀,标识该字符串不做特殊的处理
- """" 三引号
2.2.2、转义序列、缩进、续航符
-
转义序列
-
\ \ ,\ t ,\ r , \ n , \ ' , \ "
- \t : tab键
- \r : 回车
- \n : 换行
- \ : 转义符
-
前缀 r,把里面的所有字符当普通字符对待(不要特殊处理,转义字符不要特殊处理)
-
前缀f,f字符串,也叫插值字符串,3.6版本新增,也叫格式化字符串
-
-
缩进
- 未使用C等语言的花括号,而是采用缩进的方式表示层次关系
- 约定使用4个空格缩进
-
续航
- 在行尾使用 \
- 如果使用各种括号,认为括号内是一个整体,内部阔行不可
语法演示
1、运行java程序
%%js
alert('hellow')
2、添加注释'',""
print('abc'+'efg') #test
abcefg #执行结果
print('abc'+"efg") #test
abcefg #执行结果,单引号双引号可以随便使用
3、' " "' 单双三引号,可以跨行、可以在其中自由的使用单引号测试
''' welcome "to"
1\
2\
3\
'pyhon' '''
' welcome "to" \n123\'pyhon\' ' #执行结果
4、变量_ 即上一条命令得执行结果被记录在变量_中
_
' welcome "to" \n123\'pyhon\' '
print(_)
welcome "to"
123'pyhon'
5、前缀 r,把里面的所有字符当普通字符对待
print(r"welcome \n beijing")
welcome \n beijing
2.2.3、标识符、常量、字面常量、变量
- 标识符
- 1、一个名字,用来指代一个值
- 2、只能字母、下划线和数字
- 3、只能以字母和下划线开头
- 4、不能是python得关键字、例如def、class、就不能作为标识符
- 5、python是大小写敏感的
- 约定:
- 不允许使用中文
- 不允许使用歧义单词,例如class_
- 在python中不要随便使用下划线开头得表示符
- 常量
- 一旦赋值就不能改变值得标识符
- python中无法定义常量
- 字面常量
- 一个单独的量,例如12、"123" 、'121u3912.03e-9'
- 变量
- 赋值后,可以改变值得标识符
- 标识符本质
- 每一个标识符对应一个具有数据结构的值,但是这个值不方便直接访问,程序员就可以通过其对应的标识符来访问数据,标识符就是一个指代,一句话,标识符就是给程序员编程使用的。
三、语言类型
- python是动态语言、强类型语言
- 静态编译语言
- 实现声明变量类型,类型不能改变
- 编译时检查
- 动态编译语言
- 不用事先声明类型,随时可以赋值为其他类型
- 编程时不知道是什么类型,很难推断
- 强类型语言
- 不同类型时间操作,必须先强制类型转换为同一类型,print('a' + 1)
- 不同类型时间操作,必须先强制类型转换为同一类型,print('a' + 1)
- 弱类型语言
- 不同类型间可以操作,自动隐式转换,java Script和console.log(1+'a')
向往的地方很远,喜欢的东西很贵,这就是我努力的目标。