实训day01 python基础
一、编程语言
编程语言:可以被计算机所识别的表达方式。
编程:程序员通过编程语言将自己的想法编写出来,产生的结果就是包含字符的文件。
其中,只有程序在运行时,其中的字符才有特定的语法意义。
二、计算机组成
CPU、内存、外存、输入设备、输出设备
三、python安装使用
四、变量
变量即为可以变化的量
变量值:会在内存中产生一份内存地址。
变量名:用于和变量进行绑定。
name = 'lml' print(name)
=:用来将变量值绑定给变量
变量的命名规范:下划线命名
age_of_oldboy
变量名的定义规范:1、以英文字母或下划线开头命名
2、不能以数字开头命名
3、关键字不能命名
定义变量名不好的方式:不要以中文命名,变量名过长或不达意。
名字 = ‘lml’ print(名字)
定义变量的三大特征:
id:用来表示变量的值在内存中唯一的一份内存地址,变量的值一样,内存地址不一样
name1 = 'lml1' name2 = 'lml2'
#在某个长度内,python将值相同的变量值统一存放在同一个内存地址中
print(id(name1))
print(id(name2))
type:变量值的类型
str1 = 'hello' print(type(str1))
value:变量的值
str2 = 'hello' print(str1 == str2)
五、常量
常量为不变的量。本质上也是变量,在python不会有任何机制限制不能修改变量,而是程序员人为限制。
命名规范:变量名全大写
六、用户与程序交互
输入:input()
输出:output()
让用户输入输出用户名:
#输入
name = input('请输入姓名:')
#输出
print(name)
#在python3中,input内输入的任何数据类型都是字符串 python2中输出什么类型就存什么类型
print(type(name))
七、注释
单行:#(快捷键:ctrl + /)
多行:三引号 ‘’‘ """(快捷键:三引号+回车键)
八、基本数据类型:
1、整型:int
2、浮点型:float
#int age = int(20) print(age) printf(type(age)) #float sal=1.01 print(sal) printf(type(sal))
字符串类型:str 表示名字、性别、地址等;在单、双、三引号内,由一串字符组成
优先掌握的操作:
1、按索引取值(正向取+反向取) :只能取
2、切片(顾头不顾尾,步长)
3、长度len
4、成员运算in和not in
5、移除空白strip
6、切分split
7、循环
#按索引取值(正向取+反向取) :只能取
#正向:
str1 = 'hello world!'
print(str1[0]) #h
print(str1[9]) #l
#反向
print(str1[-2]) #d
#切片(顾头不顾尾,步长)
str1 = 'hello world!'
#0—(5-1)
print(str1[0:5]) #hello
#步长
print(str1[0:12]) #hello world!
print(str1[0:12:2]) #hlowrd
#长度len
print(len(str1)) #12
#成员运算in和not in
print('h' in str1) #True
print('h' not in str1) #False
#移除空白strip 一处字符串中左右两边的空格
str1 = ' hello world!'
print(str1)
str1 = ' hello world! '
print(str1)
print(str1.strip())
#去除指定字符串
str2 = '!world!'
print(str2.strip('!'))
#切分split
str1 = ' hello world!'
#根据str1内的空格进行切分 切分出来的值会存放在[]列表中
print(str2.strip('')) #['hello','world!']
#循环
#对str1字符串进行遍历,打印每一个字符
for line in str1:
print(line)
九、格式化输出
字符串格式化输出:
# 把100替换给了%s
# str1 = '尊敬的用户,你好!您本月的话费扣除%s元,还剩0元。' % 100
# 把一百替换给了%s, 把50替换给了%d
# str1 = '尊敬的用户,你好!您本月的话费扣除%s元,还剩%d元。' % ('一百', 50)
# print(str1)
# 报错
# str1 = '尊敬的用户,你好!您本月的话费扣除%s元,还剩%d元。' % ('一百', '50')
# print(str1)
字符串类型:
# 1、strip,lstrip,rstrip
str1 = ' hello lml '
print(str1)
#去掉两边空格
print(str1.strip())
#去掉左边空格
print(str1.lstrip())
#去掉右边空格
print(str1.rstrip())
# 2、lower,upper
str1 = 'hello LML'
# 转换成小写
print(str1.lower())
# 转换成大写
print(str1.upper())
# 3、startswith,endswith
str1 = 'hello lml'
# 判断str1字符开头是否等于hello
print(str1.startswith('hello')) # True
# 判断str1字符末尾是否等于lml
print(str1.endswith('lml')) # True
# 4、format(格式化输出)的三种玩法
str1 = 'my name is %s, my age %s!' % ('lml', 18)
print(str1)
# 方式一: 根据位置顺序格式化
# print('my name is {}, my age {}!'.format('lml', 18))
# 方式二: 根据索引格式化
print('my name is {0}, my age {1}!'.format('lml', 18))
#方式三: 指名道姓地格式化
print('my name is {name}, my age {age}!'.format(age=18, name='lml'))
# 5、split 切分
# 6、join 字符串拼接
# 报错,只允许字符串拼接
print(' '.join(['lml', 18]))
# 根据空格,把列表中的每一个字符串进行拼接
print(' '.join(['lml', '18', 'from GZ']))
# 根据_,把列表中的每一个字符串进行拼接
print('_'.join(['lml', '18', 'from GZ']))
# 7、replace:字符串替换
str1 = 'my name is lml, my age 20!'
print(str1)
str2 = str1.replace('lml', 's')
print(str2)
# 8、isdigit:判断字符串是否是数字
choice = input('请选择功能[0, 1, 2]: ')
# 判断用户输入的选择是否是数字
print(choice.isdigit())
作业:
写代码,有如下变量,请按照要求实现每个功能: name = " aleX"
1) 移除 name 变量对应的值两边的空格,并输出处理结果
2) 判断 name 变量对应的值是否以 "al" 开头,并输出结果
3) 判断 name 变量对应的值是否以 "X" 结尾,并输出结果
4) 将 name 变量对应的值中的 “l” 替换为 “p”,并输出结果
5) 将 name 变量对应的值根据 “l” 分割,并输出结果。
6) 将 name 变量对应的值变大写,并输出结果
7) 将 name 变量对应的值变小写,并输出结果
8) 请输出 name 变量对应的值的第 2 个字符?
9) 请输出 name 变量对应的值的前 3 个字符?
10)请输出 name 变量对应的值的后 2 个字符?
11)请输出 name 变量对应的值中 “e” 所在索引位置?
12)获取子序列,去掉最后一个字符。如: oldboy 则获取 oldbo。
1)print(name.strip())
2)print(name.startswith('al'))
3)print(name.endswith('X'))
4)print(name.replace('l','p'))
5)print(name.split('l'))
6)print(name.upper())
7)print(name.lower())
8)print(name[1])
9)print(name[0:3])
10)print(name[-2:])
11)print(name.find('e'))
12)print(name[0:-1])
浙公网安备 33010602011771号