Python基础
一 编程语言
什么是编程语言?
上面提及的能够被计算机所识别的表达方式即编程语言,语言是沟通的介质,而编程语言是程序员与计算机沟通的介质。在编程的世界里,计算机更像是人的奴隶,人类编程的目的就命令奴隶去工作。
上面提及的能够被计算机所识别的表达方式即编程语言,语言是沟通的介质,而编程语言是程序员与计算机沟通的介质。在编程的世界里,计算机更像是人的奴隶,人类编程的目的就命令奴隶去工作。
什么是编程?
编程即程序员根据需求把自己的思想流程按照某种编程语言的语法风格编写下来,产出的结果就是包含一堆字符的文件。
编程即程序员根据需求把自己的思想流程按照某种编程语言的语法风格编写下来,产出的结果就是包含一堆字符的文件。
强调:
程序在未运行前跟普通文件无异,只有程序在运行时,文件内所写的字符才有特定的语法意义。
程序在未运行前跟普通文件无异,只有程序在运行时,文件内所写的字符才有特定的语法意义。
二 计算机组成部分
CPU:中央处理器(CPU)是一块超大规模的集成电路,是一台计算机的运算核心和控制核心。它的功能主要是解释计算机指令以及处理计算机软件中的数据。主要包括运算器(ALU)和高速缓冲处理器(Cache)及实现它们之间联系的数据(Data)、控制及状态的总线(Bus)。
内存:内存(Memory)也被称为内存储器和主存储器,其作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。
外存:外储存器是指除计算机内存及CPU缓存以外的储存器,此类储存器一般断电后仍然能保存数据。常见的外存储器有硬盘、软盘、光盘、U盘等。
输入设备:向计算机输入数据和信息的设备。是计算机与用户或其他设备通信的桥梁,是用户和计算机系统之间进行信息交换的主要装置之一。
输出设备:是计算机硬件系统的终端设备,把各种计算结果数据或信息以数字、字符、图像、声音等形式表现出来。
CPU:中央处理器(CPU)是一块超大规模的集成电路,是一台计算机的运算核心和控制核心。它的功能主要是解释计算机指令以及处理计算机软件中的数据。主要包括运算器(ALU)和高速缓冲处理器(Cache)及实现它们之间联系的数据(Data)、控制及状态的总线(Bus)。
内存:内存(Memory)也被称为内存储器和主存储器,其作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。
外存:外储存器是指除计算机内存及CPU缓存以外的储存器,此类储存器一般断电后仍然能保存数据。常见的外存储器有硬盘、软盘、光盘、U盘等。
输入设备:向计算机输入数据和信息的设备。是计算机与用户或其他设备通信的桥梁,是用户和计算机系统之间进行信息交换的主要装置之一。
输出设备:是计算机硬件系统的终端设备,把各种计算结果数据或信息以数字、字符、图像、声音等形式表现出来。
三 python的安装与使用
1.安装python解释器
2.安装pycharm编辑器
3.编写python代码,并输出打印hello world!
1.安装python解释器
2.安装pycharm编辑器
3.编写python代码,并输出打印hello world!
代码如下:
print('hello world!')
#打印''内的内容
四 变量
可变化的量。
变量值: 是真实存放在内存中的一块内存地址。
变量名: 用于与变量值绑定关系的。
赋值=号: 将变量的值绑定给变量名的。
变量的命名规范
1.驼峰命名法:StickyFingers
2.下划线命名:Sticky_Fingers(Python中一般使用这种命名法)
变量名定义规范
1.要以英文字母或下划线开头(不能以数字开头)
2.关键字不能命名
如'and','as','assert','break','class','continue','def','del','elif'等
定义变量名不好的方式
1.不要以中文命名
2.命名长度过长
3.变量命名不达意
name = 'Sticky_Fingers'
#name为变量名,''内为变量值,意为将''内的值赋值给变量
gold #英文字母开头
_experience #下划线开头
4theDream #错误
定义变量的三大特征:
id #用来表示变量的值在内存的地址 type #变量值的类型 value #变量的值
五 常量
不可变的量,以全大写命名。本质上也是变量,在机制上并不是不能对其修改,而是大家都规定好凡是全大写的变量都称之为常量,不可对其进行修改。
不可变的量,以全大写命名。本质上也是变量,在机制上并不是不能对其修改,而是大家都规定好凡是全大写的变量都称之为常量,不可对其进行修改。
命名规范:变量名全大写
PLATINUM = '白金'
六 用户与程序交互
输入:
input()
输入:
input()
输出:
print()
print()
standname = input('你的替身名:') print(standname)
七 格式化输出
尊敬的用户,你好!您本月的话费扣除99元,还剩0元。
尊敬的用户,你好!您本月的话费扣除99元,还剩0元。
# 通过某种占位符,用于替换字符串中某个位置的字符。
占位符:
%s: 可以替换任意类型
%d: 可以替换数字类型
%s: 可以替换任意类型
%d: 可以替换数字类型
示例:
str1 = '尊敬的用户,你好!您本月的话费扣除%s元,还剩%d元。' %('二十九',44) print(str1) #44不可以加'',%d只可替代数字,数字加上''后就会表示字符串
八 基本数据类型
1.数字类型:
整型: int
1.数字类型:
整型: int
浮点型: float
#int geniusboy = int(16) print(geniusboy) print(type(geniusboy)) #float height = float(1.75) print(height) print(type(height))
2.字符串类型
作用:名字,性别,国籍,地址等描述信息
作用:名字,性别,国籍,地址等描述信息
定义:在单引号\双引号\三引号内,由一串字符组成
stand = 'Gold Experience'
优先掌握的操作:
1、按索引取值(正向取+反向取) :只能取
#1.按索引取值(正向+反向取) #正向 print(stand[0]) #G print(stand[5]) #E #反向 print(stand[-1]) #e
2、切片(顾头不顾尾,步长)
#2.切片 print(stand[0:6]) #Gold Ex #步长
print(stand[0:14:2]) #Gl xeine
3、长度len
#3.长度 print(len(stand)) #14
4、成员运算in和not in
#4.成员运算in和not in print('Gold' in stand) #True print('Gold' not in stand) #False
5、移除空白strip
#5.移除空白 #会移除字符串中左右两边的空格 stand = ' Gold ' print(stand) print(stand.strip()) #Gold #去除指定字符串 stand1 = '?Gold!' print(stand1.strip('!').strip('?'))
6、切分split
#6.切分 #根据变量值内的空格进行切分,得到的部分存放进[]列表中 print(stand.split(' ')) #['Gold','Experience']
7、循环
#7.循环 #对字符串进行遍历,打印每一个字符 for line in stand: print(line)
需要掌握的:
1、strip,lstrip,rstrip
stand =' Gold ' #1.strip,lstrip,rstrip print(stand) print(stand.strip()) #去除两边空格 print(stand.lstrip()) #去除左边空格 print(stand.rstrip()) #去除右边空格
2、lower,upper
#2.lower,upper #转换成小写 print(stand.lower()) #gold #转换成大写 print(stand.upper()) #GOLD
3、startswith,endswith
#3.startswith,endswith print(stand.startswith(' ')) #True print(stand.endswith('d')) #False
4、format的三种玩法
#4.format格式化输出的三种用法 str1 = '乔鲁诺·乔巴纳有%s个梦想,就是成为%s' %(1,'gang star') #方式一:根据位置顺序格式化 print('乔鲁诺·乔巴纳有{}个梦想,就是成为{}'.format(1,'gang star')) #方式二:根据索引格式化 print('乔鲁诺·乔巴纳有{0}个梦想,就是成为{1}'.format(1,'gang star')) #方式三:指名格式化 print('乔鲁诺·乔巴纳有{number}个梦想,就是成为{who}'.format(number=1,who='gang star'))
5、split,rsplit
rsplit和split作用类似,但是是从末尾处开始
print(stand.rsplit('l')) #['d ',' Go']
6、join
#6.join字符串拼接 #只允许字符串拼接 print(' '.join(['Gold','Experience','\b—Giorno Giovanna']))
7、replace
#7.字符串替换 str1 = 'AriAriAriAri…Arrivederci!' print(str1) str2 = str1.replace('Ari','Ora').replace('Arrivederci','Ora') print(str2)
8、isdigit
#8.判断字符串是否为数字 choice = input('你掉的是这把金剑呢,还是这把银剑呢? 1.金剑 2.银剑 3.我是老实人') print(choice.isdigit())
今日作业
name=" aleX" #1.移除name变量对应的值两边的空格,并输出处理结果 print(name.strip()) #2.判断name变量对应的值是否以"al"开头,并输出结果 print(name.startswith('al')) #3.判断name变量对应的值是否以"X"结尾,并输出结果 print(name.endswith('X')) #4.将name变量对应的值中的“l”替换为“p”,并输出结果 print(name.replace('l','p')) #5.将name变量对应的值根据“l”分割,并输出结果。 print(name.split('l')) #6.将name变量对应的值变大写,并输出结果 print(name.upper()) #7.将name变量对应的值变小写,并输出结果 print(name.lower()) #8.请输出name变量对应的值的第2个字符? print(name[1]) #9.请输出 name变量对应的值的前3个字符? print(name[0:3]) #10.请输出name变量对应的值的后2个字符? print(name[-1],name[-2]) #11.请输出name变量对应的值中“e”所在索引位置? print(name.index('e')) #12.获取子序列,去掉最后一个字符。如: oldboy则获取oldbo。 print(name.strip(name[-1]))
运行结果