day01 python基础
一 编程语言
1 编程语言
能够被计算机所识别的表达方式即编程语言,语言是沟通的介质,而编程语言是程序员与计算机沟通的介质。
2 编程
程序员根据需求把自己的思想流程按照某种编程语言的语法风格编写下来。
程序在未运行前跟普通文件无异,只有程序在运行时,文件内所写的字符才有特定的语法意义。
3 编程语言的分类
编译型(需要编译器):如C,执行速度快,调试麻烦
解释型(需要解释器):如python,执行速度慢,调试方便
二 计算机组成部分
CPU 内存 外存 输入设备 输出设备
三 一个简单的Python程序
编写python代码,并输出打印hello world!
print('hello world!')
输出:hello world!
四 变量
变量即为可变化的量。变量值value是真实存放在内存中的一块内存地址。变量名用于与变量值绑定关系。
赋值=号: 将变量的值绑定给变量名。
1 变量存在目的
我们需要有一种机制能够反映或者说是保存下来程序执行时状态以及状态的变化
2 定义变量格式
变量名(相当于门牌号,指向值所在的空间),等号,变量值
例如
name = 'Monika'
3 变量的定义规范
1. 变量名只能是字母、数字或下划线的任意组合
2. 变量名的第一个字符不能是数字
3. 关键字不能声明为变量名
4 变量形式
推荐使用下划线型
age_of_baby = 4
number_of_tomato = 36
4 id,type,value
type表示的是变量值的类型,id表示变量的值在内存中唯一的地址,value表示变量的值。
等号比较的是value,is比较的是id。
name = 'holly' print(type(name))
输出
<class 'str'>
id相同,意味着type和value必定相同,value相同type肯定相同,但id可能不同。
5 小计数池
在某个长度内,python把值相同的变量值统一存放在同一个内存地址中
name = 'holly' name1 = 'holly' print(id(name)) print(id(name1))
输出:
2909328622064 2909328622064
五 常量
常量即为不可变的量,以全大写命名。
并不是不能对其修改,而是大家都规定好凡是全大写的变量都称之为常量,不可对其进行修改。常量本质上也是变量。
六 用户与程序交互
输入:
input()
输出:
print()
name = input('请输入姓名') print(name)
输出
请输入姓名 Monika
Monika
七 注释
单行注释:# ,快捷键:Ctrl + /
多行注释:三引号 ''' """ 快捷键:''' +回车或 """ +回车
八 格式化输出
通过某种占位符,用于替换字符串中某个位置的字符。
占位符:
%s: 可以替换任意类型
%d: 可以替换数字类型
示例:
# 把100替换给了%s str1 = '尊敬的用户,你好!您本月的话费扣除%s元,还剩0元。' % 100 # 把一百替换给了%s, 把50替换给了%d str2 = '尊敬的用户,你好!您本月的话费扣除%s元,还剩%d元。'%('一百','50') print(str1) print(str2)
九 基本数据类型
1.数字类型:
整型: int
作用:年纪,等级,身份证号,qq号等整型数字
定义:
age=10 #本质age=int(10)
浮点型: float
作用:薪资,身高,体重,体质参数等浮点数
salary=3000.3 #本质salary=float(3000.3)
2.字符串类型
作用:名字,性别,国籍,地址等描述信息
定义:在单引号\双引号\三引号内,由一串字符组成
name='Monika'
python并没有字符类型
优先掌握的操作:
1、按索引取值(正向取+反向取) :只能取
反向取时最后一个元素为-1,向前依次递减
name = "Alex" print(name[1]) print(name[-1])
输出
l
x
2、切片(顾头不顾尾,步长)
name = "Alex" print(name[0:4:2])
0-4为范围,2为步长
输出:Ae
3、长度len
name = "Alex" print(len(name))
输出:4
4、成员运算in和not in
name = "Alex" print('A' in name) print('e' not in name)
输出:
True
False
5、移除空白strip
name = " Alex " print(name.strip()) print(name.lstrip()) print(name.rstrip())
strip()括号中可以填需要移除的其他字符,lstrip()和rstrip()分别用于去除最左边和最右边的字符
输出
Alex
Alex
Alex
6、切分split
name = "hello world" print(name.split(' '))
可以将空格换成其他字符切分
输出
['hello', 'world']
7、循环
对字符串进行遍历,打印每一个字符
name = 'hello world' for line in name: print(line)
需要掌握的:
1、strip,lstrip,rstrip(上已叙述)
2、lower,upper
name = 'Hello World' #将 name 变量对应的值变大写,并输出结果 print(name.upper()) #将 name 变量对应的值变小写,并输出结果 print(name.lower())
输出:
HELLO WORLD
hello world
3、startswith,endswith
name = 'Hello World' #判断 name 变量对应的值是否以 "He" 开头,并输出结果 print(name.startswith('He')) #判断 name 变量对应的值是否以 "l" 结尾,并输出结果 print(name.endswith('l'))
输出:
True
False
4、format的三种玩法
str1 = 'my name is %s, my age %s!' % ('tank', 18) print(str1) # 方式一: 根据位置顺序格式化 print('my name is {}, my age {}!'.format('tank', 18)) # 方式二: 根据索引格式化 print('my name is {0}, my age {1}!'.format('tank', 18)) #方式三: 指名道姓地格式化 print('my name is {name}, my age {age}!'.format(age=18, name='tank'))
输出:
my name is tank, my age 18! my name is tank, my age 18! my name is tank, my age 18! my name is tank, my age 18!
5、split(上文已述)
6、join 字符串拼接,且只允许字符串的拼接
# 根据空格,把列表中的每一个字符串进行拼接 print(' '.join(['Monika', '26', 'from USA'])) # 根据_,把列表中的每一个字符串进行拼接 print('_'.join(['Monika', '26', 'from USA']))
输出
Monika 26 from USA Monika_26_from USA
7、replace
str1 = 'my name is Efhjr, my age 45!' print(str1) str2 = str1.replace('45', '28') print(str2)
输出
my name is Efhjr, my age 45! my name is Efhjr, my age 28!
8、isdigit
choice = input('请选择功能[0, 1, 2]: ') # 判断用户输入的选择是否是数字 print(choice.isdigit())
输出
请选择功能[0, 1, 2]: 3
True