Python学习第三课-基本数据类型
Python学习第三课-基本数据类型
- 一、基本概念
- 1.1表达式
- 1.2语句
- 1.3程序
- 1.4函数
- 内置函数
- 自定义函数
- 参数
- 返回值
- 二、标识符
- 2.1 关键字
- 2.2标识符概念
- 驼峰命名法
- 下划线命名法
- 三、数据类型
- 3.1整数和小数
- 3.2布尔值和空值
- 3.3字符串
- 3.3.1转义字符
- 3.3.2长字符串
- 3.3.2.1作用
- 3.3.2.2格式化字符串
- 3.3.2.3操作函数
- 四、变量
- 4.1 存储内容
- 作业1
- 作业2
一、基本概念
1.1表达式
表达式,是由数字、算符、数字分组符号(括号)、自由变量和约束变量等以能求得数值的有意义排列方法所得的组合
1.2语句
1.3程序
相当于一个功能
1.4函数
查看函数 command+鼠标左键
def xxx():pass #占位,相当于完成函数
内置函数
内部已经有的函数
自定义函数
自己定义的函数
参数
a = input("请输入输入") #输入语句 ()的就是参数
返回值
函数执行的结果
二、标识符
2.1 关键字
查看关键字
#导入keyword 模块
import keyword
#显示所有关键字
keyword.kwlist
[‘False’, ‘None’, ‘True’, ‘and’, ‘as’, ‘assert’, ‘async’, ‘await’, ‘break’, ‘class’, ‘continue’, ‘def’, ‘del’, ‘elif’,‘else’, ‘except’, ‘finally’, ‘for’, ‘from’, ‘global’, ‘if’, ‘import’, ‘in’, ‘is’, ‘lambda’, ‘nonlocal’, ‘not’, ‘or’, ‘pass’, ‘raise’, ‘return’, ‘try’, ‘while’, ‘with’, ‘yield’]
2.2标识符概念
- 组成
标识符有字母、数字、下划线组成 - 命名规范
- 标识符是由字符(A~Z 和 a~z)、下划线和数字组成,但第一个字符不能是数字。
- 标识符不能和 Python 中的保留字相同。
- Python中的标识符中,不能包含空格、@、% 以及 $ 等特殊字符。
例如,下面所列举的标识符是合法的:
UserID
name
mode12
user_age
以下命名的标识符不合法:
4word #不能以数字开头
try #try是保留字,不能作为标识符
$money #不能包含特殊字符
驼峰命名法
- 小驼峰
变量一般用小驼峰法标识。驼峰法的意思是:除第一个单词之外,其他单词首字母大写。譬如
int myStudentCount; #变量myStudentCount第一个单词是全部小写,后面的单词首字母大写。
常用于函数名。
- 大驼峰
大驼峰法(即帕斯卡命名法)把第一个单词的首字母也大写了。常用于类名,属性,命名空间等
下划线命名法
my_name
三、数据类型
3.1整数和小数
- 整数(int)
- 小数(float)
3.2布尔值和空值
- 布尔:True和False
- None常量:空值
3.3字符串
- 数字、字母、下划线
- 单引号,双引号成对的引号
3.3.1转义字符
转义字符 | 意义 |
---|---|
\n | 换行 |
\t | 跳到下一个tab位置 |
\r | 回车 |
r | 保持原来字符串的效果 |
\ | 转移还原本意。标识后面的一个字符不具有特殊意义 |
3.3.2长字符串
- python里使用某个东西的规则
- python里面使用的东西要么是python自带所拥有的的,那么你就可以用
- 如果不是python所自带的。那么你必须先声明这个东西,你才可以用
3.3.2.1作用
- 1.保持文本的格式的作用
- 2.作为一个注释的作用
- 字符串的表示 Str
- ‘’‘ 三引号
3.3.2.2格式化字符串
- 第一种格式化字符串,拼串
a ="a"
b ="b"
print(a+b)
结果
ab
- 第二种格式化字符串,参数传递
- 第三种格式化字符串,占位符
s="我爱你%s"%"china"
print(s)
结果
我爱你china
%s 字符串占位
%f 浮点数占位
%d 整数占位
- 第四种格式化字符串f{变量}’
str.format ()
a ="中国"
s=f"我爱你{a}"
print(s)
我爱你中国
- 第五种格式化字符串{}.format()’
a ="中国"
c="我爱你{}".format(a)
print(c)
我爱你中国
3.3.2.3操作函数
max(str)
返回字符串 str 中最大的字母。
min(str)
返回字符串 str 中最小的字母。
- string.split(str="", num=string.count(str))
以 str 为分隔符切片 string,如果 num 有指定值,则仅分隔 num+1 个子字符串
string.partition(str)
有点像 find()和 split()的结合体,从 str 出现的第一个位置起,把 字 符 串 string 分 成 一 个 3 元 素 的 元 组 (string_pre_str,str,string_post_str),如果 string 中不包含str 则 string_pre_str == string.
a="我爱你中国"
print("max(str)结果为'{}'".format(max(a)))
print("min(str)结果为'{}'".format(min(a)))
print("string.split结果为'{}'".format(a.split('爱你')))
print("string.partition(str)结果为'{}'".format(a.partition('爱你')))
结果如下:
max(str)结果为’爱’
min(str)结果为’中’
string.split结果为’[‘我’, ‘中国’]’
string.partition(str)结果为’(‘我’, ‘爱你’, ‘中国’)’
str.join(sequence)
Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。
str = "-";
seq = ("a", "b", "c"); # 字符串序列
print str.join( seq );
结果如下:
a-b-c
str.index()
Python index() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,该方法与 python find()方法一样,只不过如果str不在 string中会报一个异常。
str1 = "this is string example....wow!!!";
str2 = "exam";
print(str1.index(str2))
print(str1.index(str2, 10))
print(str1.index(str2, 40))
结果如下:
15
15
Traceback (most recent call last):
File “/Users/mianhua/PycharmProjects/python/2021/2121年4月15日/01.py”, line 5, in
print(str1.index(str2, 40))
ValueError: substring not found
Python find()
Python find() 方法检测字符串中是否包含子字符串 str ,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内,如果包含子字符串返回开始的索引值,否则返回-1。
str1 = "this is string example....wow!!!";
str2 = "exam";
print(str1.find(str2))
print(str1.find(str2, 10))
print(str1.find(str2, 40))
结果如下:
15
15
-1
四、变量
4.1 存储内容
- id:内存地址
- type :数据类型
- value:值
作业1
a,b= 6, 8。 我想让a=8 b=6 我该怎么办?用2种方式实现
def demo1(a,b):#创建临时变量 temp ,并将 a 的值存储在 temp 变量中,接着将 b 值赋给 a,最后将 temp 赋值给 b 变量。temp = aa = bb = tempprint('交换后a的值为: {}'.format(a),'交换后b的值为: {}'.format(b))
def demo2(a,b):a,b = b,aprint(a,b)
def demo3(a, b):a = a + bb = a - ba = a - bprint(a,b)
if __name__ == '__main__':demo1(6,8)demo2(6,8)demo3(6,8)
结果如下:
8 6
8 6
8 6
#update——实现输入任意整数,交换位置
a = int(input('输入a值: '))
b = int(input('输入b值: '))
def demo1(a,b):#创建临时是变量temp = aa = bb = tempprint(a,b)
def demo2(a,b):#交换位置a,b = b,aprint(a,b)
def demo3(a, b):#数学计算法,加法,乘法都可以a = a + bb = a - ba = a - bprint(a,b)
if __name__ == '__main__':demo1(a,b)demo2(a,b)demo3(a,b)
结果如下
输入a值: 123
输入b值: 456
456 123
456 123
456 123
#update——增加交互提示
a = int(input('输入a值: '))
b = int(input('输入b值: '))
print('初始 a的值为: {}'.format(a), ',b的值为: {}'.format(b))
def demo1(a,b):temp = aa = bb = tempprint('交换后 a的值为: {}'.format(a), ',b的值为: {}'.format(b))
def demo2(a,b):a,b = b,aprint('交换后 a的值为: {}'.format(a), ',b的值为: {}'.format(b))
def demo3(a, b):a = a + bb = a - ba = a - bprint('交换后 a的值为: {}'.format(a), ',b的值为: {}'.format(b))
if __name__ == '__main__':demo1(a,b)demo2(a,b)demo3(a,b)
结果如下:
输入a值: 789
输入b值: 426
初始 a的值为: 789 ,b的值为: 426
交换后 a的值为: 426 ,b的值为: 789
交换后 a的值为: 426 ,b的值为: 789
交换后 a的值为: 426 ,b的值为: 789
#update——更新demo3为字符串切片法,之前的数据计算法,受限于输入的数据类型,无法处理字符串类型
a = input('输入a值: ')
b = input('输入b值: ')
print('初始 a的值为: {}'.format(a), ',b的值为: {}'.format(b))
def demo1(a,b):#创建临时是变量temp = aa = bb = tempprint('临时变量法: a的值为: {}'.format(a), ',b的值为: {}'.format(b))
def demo2(a,b):#交换法a,b = b,aprint('交换位置法: a的值为: {}'.format(a), ',b的值为: {}'.format(b))
def demo3(a, b):#a =a+bb =a.split(b)a =a.split(b[0])print('字符串切片法: a的值为: {}'.format(a[1]), ',b的值为: {}'.format(b[0]))
if __name__ == '__main__':demo1(a,b)demo2(a,b)demo3(a,b)
结果如下:
输入a值: abc
输入b值: xyz
初始 a的值为: abc ,b的值为: xyz
临时变量法: a的值为: xyz ,b的值为: abc
交换位置法: a的值为: xyz ,b的值为: abc
字符串切片法: a的值为: xyz ,b的值为: abc
作业2
完成字符串的逆序以及统计
- 设计一个程序,要求只能输入长度低于31的字符串,否则提示用户重新输入
- 打印出字符串长度
- 使用切片逆序打印出字符串
测试字符串:
0123456789012345678901234567890123456789
0123456789
def demo():content=input('请输入字符串:')if len(content)>30:print('您输入的字符串长度大于30,请重新输入')demo()else:print('您输入的字符是:'+content)print('字符串长度是:'+str(len(content)))print('切片逆序打印为:'+str(content[::-1]))
demo()
结果如下
请输入字符串:0123456789012345678901234567890123456789
您输入的字符串长度大于30,请重新输入
请输入字符串:0123456789
您输入的字符是:0123456789
字符串长度是:10
切片逆序打印为:9876543210
Python学习第三课-基本数据类型相关推荐
- Python基础第三课-基本数据类型
Python基础第三课-基本数据类型 1.几个基本概念 1.1 表达式 1.2 语句 1.3 程序(program) 1.4 函数(function) 2.标识符 2.1 关键字 2.2 标识符概念 ...
- Python学习第七课-元组字典集合
Python学习第七课-元组&字典&集合 一.元组 1.1元组简介 1.2元组的拆包 1.3字符串拆包 1.4列表的拆包 1.5拆包练习 二.字典的简介 2.1介绍 2.2操作 三.字 ...
- python列表和字典_2020/11/18 python学习第5课 列表和字典
python学习第5课 列表和字典 课程目标 熟练掌握列表.字典中元素的增删改查 理解列表和字典的区别 课程难点 列表与字典增删改查的异同 正确使用切片,深刻理解切片时冒号左右数字的意义 课程知识点总 ...
- Python学习第六课-列表
Python学习第六课-列表 一.序列 1.1 概念 1.2分类 二.列表 2.1 概念 2.2 练习 三.切片 3.1 可切片对象的索引方式 3.2切片操作 3.3 练习 四.通用操作 4.1 序列 ...
- JavaScript学习 第三课(三)
JavaScript学习 第三课(三) 学习内容 一.日期和时间对象 二.日期和对象常用的方法 三.修改日期和对象常用的方法 四.将日期和时间转化为字符串 五.日期时间对象的比较 一.日期和时间对象 ...
- Python学习笔记三之编程练习:循环、迭代器与函数
Python学习笔记三之编程练习 1. 编程第一步 # 求解斐波纳契数列 #/user/bin/python3#Fibonacci series:斐波那契数列 #两个元素的总和确定了下一个数 a,b= ...
- python学习(三)scrapy爬虫框架(二)——创建一个scrapy爬虫
在创建新的scrapy爬虫之前,我们需要先了解一下创建一个scrapy爬虫的基本步骤 第一步:确定要爬取的数据 以爬取豆瓣电影数据为例: 每部电影所要爬取的信息有: 片名:<头号玩家> 导 ...
- 1、Python学习笔记第一课:python介绍
python学习第一课 python介绍: 1.python是一种解释性,面向对象语言. 2.特点: (1):可读性强: (2):简洁,生产效率高: (3):面向对象: (4):免费和开源: (5): ...
- 0.0 目录-深度学习第三课《结构化机器学习项目》-Stanford吴恩达教授
文章目录 第五课 第四课 第三课 第二课 第一课 第五课 <序列模型> 笔记列表 Week 1 循环序列模型 Week 1 传送门 -> 1.1 为什么选择序列模型 1.2 数学符号 ...
最新文章
- Nature:何胜洋和辛秀芳组发表植物叶际微生物组稳态机制
- Struts2 关于返回type=chain的用法.
- 【框架设计】健康养老云平台
- 唱歌如何保持高位置_歌唱中如何找到声音的高位置,内容详解
- sqoop把mysql数据导入hive
- java nslookup_nslookup使用教程
- 一个小例子搞懂redux的套路
- 谁说AI看不懂视频?
- 字节跳动在京斥资50亿购置新大楼:数千名员工已入驻
- 服务器保持与Mysql的连接
- Android旅游APP类项目源代码
- access转换MySQL教程,如何将Access数据库转换为SQL Server
- pr如何处理音效_PR剪辑如何让视频声音更好听
- U盘不显示文件但有内存
- js会员头像上传拖动处理头像类
- Windows搭建局域网Git服务器
- android彩信数据字段
- 如何用python输出九九乘法表_如何用python输出99乘法表
- sql语句利用into outfile写入一句话
- Javascript中的Number