机器只能理解机器语言
程序员编写代码(java c c c# python go 等)------- 翻译成机器语言------ 计算机执行
编译器 将其他语言翻译成机器语言的工具
1.1.2 编译器的翻译方式编译
解释
区别 翻译时间点的不同
当翻译器以解释方式进行运行的时候 叫做解释器
1.1.3 语言的分类编译型语言 执行速度很快
解释型语言 跨平台
2.解释型语言-python 2.1 输出-print
def print(self, *args, sep , end n , file None): # known special case of print print(value, ..., sep , end n , file sys.stdout, flush False) Prints the values to a stream, or to sys.stdout by default. Optional keyword arguments://可选参数 file: a file-like object (stream); defaults to the current sys.stdout.// 基本不用管 sep: string inserted between values, default a space.// 分割符 默认是空格 end: string appended after the last value, default a newline.// 换行符 flush: whether to forcibly flush the stream. pass2.2 注释 2.2.1 单行注释
# 快捷方式ctrl / 注释的语句依旧存在 但是不运行2.2.2 多行注释
2.3 输入语句input
def input(*args, **kwargs): # real signature unknown Read a string from standard input. The trailing newline is stripped. The prompt string, if given, is printed to standard output without a trailing newline before reading input. If the user hits EOF (*nix: Ctrl-D, Windows: Ctrl-Z Return), raise EOFError. On *nix systems, readline is used if available. pass
阻塞代码 不允许接着运行 等待用户的输入
# todo 根据用户传入的用户名 展示xx,你好 username input( 请输入用户名 ) print(username, 你好 ) 1、 代表的是赋值 将等号的右边赋值给等号的左边 2.username 变量名 3.input是等待输入语句 在这个函数中 我们可以填充提示语句 4.如果input没有接收到传入的数据 会将程序一直阻塞 不能继续执行 5.input接收的是一个字符串2.4 变量名
1.不允许使用关键字(python中变色了的 不允许使用)
2.由数字 字母 下划线组成 不能有其他的特殊符号 不允许有空格 不允许有括号
3.不能以数字开头
4.可以使用下划线开头
5.常量可以使用全大写命名
见名知意
2.5 运算符 乘法*加法 减法-除法/取商//取余数%指数** 赋值 将等号的右边赋值给等号的左边 判断是否是相等的! 判断不相等的复合赋值运算符
符号案例说明 a 1 a 1 a a 1加法赋值运算符- a a - 1 a a-1减法赋值运算符/ 除法赋值运算符// 取整除赋值运算符% 取模赋值运算符** 幂赋值运算符* 乘法赋值运算符 2.7 变量的类型 2.7.1 数字2.7.1.1 整数 int
1、2、3
2.7.1.2 浮点数 float
1.23、2.2
2.7.1.3 复数complex
类似 1 2i
2.7.2 字符串表现形式
单引号
双引号
引号的形式不影响具体的数据类型
2.7.3 字典{ name : 张三 , age :18}
{键名 值1 键名2 值2}
2.7.4 列表
[值1 值2 值3....] 可以使用空列表2.7.5 bool True为真False为假 2.8 字符串 2.8.1 字符串的格式化
2.8.1.1 %占位
# todo 根据用户传入的用户名 将xx,你好保存成一个字符串 name input( 请输入用户名 ) age input( 请输入年龄: ) # age int(input( 请输入年龄: )) # str1 name ,你好 # print(str1) str2 %s,你好 您的年龄是%s %(name,age) # str2 %s,你好 您的年龄是%d %(name,age) print(str2)%s传入字符串%d传入整数%06d---- 一共6位 不满足位数用0补充%f传入浮点数%.2f------ 小数点后取2位
2.8.1.2 format
# 根据传入的用户名展示
name input( 请输入用户名 )
str1 {} 您好 .format(name)
print(str1)
2.8.2 取消转义
# todo 请展示 您好t 这是hello world str1 您好t 这是\hello world str2 r 您好t 这是\hello world print(str1) print(str2) 如果不希望字符转中的特殊符号进行转义 只是输出 用r来进行取消转义2.8.3 isdigit
2.8.3.1 源码解读
def isdigit(self): # real signature unknown; restored from __doc__ S.isdigit() - bool Return True if all characters in S are digits and there is at least one character in S, False otherwise. return False
2.8.3.2 注意点
1.说明执行完isdigit返回的是布尔值
2.如果是数字组成的 返回的是True
3.isdigit判断的也是0-9组成的数字 功能之一
4.Unicode类型的数字, u
2.8.4 isdecimal2.8.4.1 源码解读
def isdecimal(self): # real signature unknown; restored from __doc__ S.isdecimal() - bool Return True if there are only decimal characters in S, False otherwise. return False
2.8.4.2 注意点
1.判断数字 只能判断0-9组成的数字
2.9 分支结构 2.9.1 面试题2.9.1.1 请问%s和pass的区别
%s是字符串中的占位符 提示字符串部分的缺失 在%变量名中进行补充
pass补齐结构 保证的是结构的完整性 程序不报错
2.9.1.2 请问if ..if..if 和if elif elif 的区别
if如果匹配成功 需要继续匹配
elif如果匹配成功 不需要继续匹配
2.9.2 单分支 if
# 如果明天下雨 我就不来上课 # if 明天下雨: # 我就不来上课 weather input( 请输入天气 ) if weather 下雨 : print( 我就不来上课 ) if 条件1 如果条件满足 需要执行的语句2.9.3 双分支
# todo 如果明天下雨 我就不来上课 否则上课 # if 下雨 # pass # else: # pass weather input( 请输入天气 ) if weather 下雨 : print( 不来上课 ) else: print( 上课 ) if 条件1满足 条件满足 执行语句 else: 只要不满足 执行语句



