计算机 数据 类型,三。计算机数据的基本数据类型,3

1. 所有计算机语法几个通识概念

1.1 表达式

表达式

是由数字、运算符、数字分组符号(括号)、自由变量和约束变量等

能求得数值的

有意义排列方法

所得的组合。

表达式特点:

表达式一般

仅仅用于

计算一些结果,不会对程序产生实质性的影响;

如果在交互模式中输入一个表达式,解释器会

自动

表达式的结果

输出。

1.2 语句

语句

是一个语法上自成体系的单位,它由

一个词

句法

上有关连的一组词构成。

语句的执行一般会对程序产生

一定的影响

,在

交互模式

不一定会

输出语句的

执行结果

1.3 程序(program)

程序

就是由

一条一条的语句

一条一条的表达式

构成的

1.4 函数(function)

简单的说函数就是

一种语句

,函数的作用是专门用来完成

特定的功能

函数的形状:xxx()

函数的分类:

1)

内置

函数 : 或者叫

内建函数

,就是由编程语言的语法规定存在的函数。这些函数,包含在编译器的运行时库中,程序员不必再单独书写代码实现它,只需要

调用

既可。

2)

自定义

函数 : 由程序员

自主创建

的函数。

当我们需要完成某个功能时,就可以去调用内置函数,或者自定义函数。

函数的两个要素:

1)参数

2)返回值

2. 标识符

2.1 关键字

Python语言一些具有

特殊功能

标识符

,这就是所谓的

关键字

。关键字是Python语言

已经使用的了

,所以

不允许

开发者自己定义和关键字相同的名字的标识符。

Python语言关键字汇总:

5f11816e36a941ed41787170dfcecc8d.png

2.2 标识符概念

2.2.1

标识符

:开发人员在程序中自定义的一些符号和名称。标识符是

自己定义的

,如 变量名 、函数名 等。

标识符的

组成

:由

26个英文字母

大小写

、数字 0-9 、符号 _ 和 $ 。

2.2.2 标识符的

命名规则

1)标识符中可以使用 字母、数字、__ 作为开头,但是

绝对 绝对 绝对

不能使用

数字

来开头。

例如

name1 (正确)

name_1 (正确)

_ Name1(正确)

1name (不正确)

2)Python语言中不能使用

关键字

保留字

来作为标识符。(详情参见上面的 2.1 关键字。)

2.2.3 标识符的

命名方式

1)驼峰命名法:

小驼峰式命名法: 第一个单词以

小写字母

开始,第二个单词的

首字母大写

;例如:myName、aDog。

大驼峰式命名法: 每一个单字的

首字母

都采用

大写字母

;例如:FirstName、LastName。

2)下划线命名法:顾名思义,就是以下划线开头的命名方式;例如:_ Name1 。

不过在程序员中还有一种命名法

比较流行

,就是

用下划线“_”来连接

所有的单词

;比如 get_url buffer_size。

3. 基本数据类型

数据类型:指变量

值的类型

,也就是可以

为变量赋哪些值

3.1 整数和小数

整数:所有整数 例如 a = 1 b = 100 c =999 都是

int类型

,我们称之为

整型

小数常量:所有小数 例如 a = 1.2 b=6.66 用

float类型

表示,我们称之为

浮点型

3.2 什么是 布尔值 和 空值

布尔值(Boolean):这个类型的值只有

2个

,一个是

True

,一个是

False

None常量:这个类型的值只有

一个数值

,就是None;也就是 空 值。

特别提示

:0 、None 、‘  ’ 三个值的

中文意思

都是

没有

,但是在编写代码时所代表的意义可是

完全!完全!!完全!!!不一样的

。具体怎么个不一样法,自己在操作的过程中再细细地体会,现在只需要先

牢牢的

记住就好。

4. 字符串

4.1 什么是字符串

字符串

主要就是表示一段文本信息。是由数字、字母、下划线组成的一串字符。

检查字符串值的类型 函数:

type()

>>>type(520)

>>>type(5.20)

>>>type('520')

注意:

1)单引号和双引号不能混合使用;

>>>a = 'abc"

SyntaxError: EOL while scanning string literal

2)在 Python语言 中用一对双引号或者一对单引号包裹的内容

就是字符串

4.2 转义字符

转义字符是一种

特殊

字符常量

。转义字符以反斜线" \ "开头,后跟一个或几个字符。转义字符具有特定的含义,不同于字符原有的意义,故称

“转义”

字符。

常用的转义字符:

\t  表示 制表符

\n  表示 换行符

\\  表示 反斜杠 \

\’  表示  ’

\ ‘’ 表示 ‘’

4.3 长字符串

长字符串又叫做

文档字符串

我们使用三重引号 ‘’‘xxxxxxxx’’’ 来表示一个长字符串。

三重引号内的字符串可以换行,并且会保留字符串中的格式。

4.4 格式化字符串(补上代码操作代码,详见视频)

方法1)

拼串

+

‘+’ 运算只能在

同类型

间运算。

整形(int)

之间的 ‘+’ 运算就是

加法(求和)运算

字符串(str)

之间的 ‘+’ 运算就是

拼串

;字符串(str)

不能够

和其他类型做 ‘+’ 运算。如果做了,会报

TypeError: unsupported operand type(s) for +: ‘int’ and ‘str’

这个错误;不同类型之间想做 ‘+’ 运算必须要转换为同一类型。

>>> 6 + 6

12

>>> 'a' + 'b'

'ab'

>>> 6 + int("6")

12

>>> 6 + "6"

TypeError: unsupported operand type(s) for +: 'int' and 'str'

s = 'Hello'

print('s =' + s)# s =Hello

方法2)

传参

通过函数之间传递的参数来格式化我们的信息。

s = 'Hello'

print('s =',s)# s = Hello

方法3)

占位符 %

%f  浮点数(float)占位

%d 整数(int)占位

>>> 'i %d years old' % '28'

i 28 years old

%s 字符串占位

>>> 'i love %s' % 'study'

i love study

>>> a = 'i love %s'

>>> a % 'python'

i love python

>>> a % 'JAVA'

i love JAVA

s = 's = %s' % 'Hello"

print(s)# s = Hello

s = 's = %s , s2 = %s' % ('Hello')

print(s)# TypeError: not enough arguments for format string

s = 's = %s , s2 = %s' % ('Hello','World')

print(s)# s = Hello , s2 = World

方法4)格式化字符串方式  f’str.{变量}’ / str.format()

s1 = '钢铁侠'

s2 = '蜘蛛侠'

a = f'Hello {s1},{s2}'

print(a)# Hello 钢铁侠,蜘蛛侠

s = 'i like {a}'

a = s.format('python')

print(a)# KeyError: 'a'

s = 'i like {}'

a = s.format('python')

print(a)# i like python

s = 'i like {0}'

a = s.format('python')

print(a)# i like python

s = 'i like {1}'

a = s.format('python')

print(a)# IndexError: Replacement index 1 out of range for positional args tuple

Python 2.6

开始(注意:不是

Python 3.6

,是

Python 2.6

),

新增

了一种

格式化字符串

函数:str.format() 。这个方法

增强

了函数格式化的一种

功能

,语法的意思是:通过 ‘{ }’ 代替 ‘%’ ,format 的 () 里面

不限制

衔接参数的

类型

a = f'语句 {s}'

print(a)# NameError: name 's' is not defined

s = 'i like {0},{1}'

a = s.format('p','b')

print(a)# i like p,b

s = 'i like {1},{2}'

a = s.format('p','b')

print(a)# IndexError: Replacement index 2 out of range for positional args tuple

s = 'i like {},{}'

a = s.format('p','b')

print(a)# i like p,b

通过以上八个例子让我们明白 f’str.{变量}’ 和 str.format()都该在什么场景下使用。

如果

没有变量值

(如 方法4 最初例子里的 s1 和 s2),就使用函数 str.format() 向 { } 里

传递数字

或者

不传

(直接空着)

如果

有变量值

,那就

不建议

使用 str.format() 方法,直接使用 f’str.{变量1},{变量2}…’ 。

在这里

再次着重提醒

:方法4 里使用的 “

f

不是

关键字

,它就是一种

格式化字符串

的方式的一种

语法

4.5 字符串的其他操作

len() 字符串的长度

a = 'I love python'

print(len(a))# 13

max() 最大值

a = 'I love python'

print(max(a))# y

min() 最小值

a = 'Ilovepython'

print(min(a))# I

str = "Line1-abcdef \nLine2-abc \nLine4-abcd";

print str.split( ); # 以空格为分隔符,包含 \n

# ['Line1-abcdef', 'Line2-abc', 'Line4-abcd']

print str.split(' ', 1 ); # 以空格为分隔符,分隔成两个

# ['Line1-abcdef', '\nLine2-abc \nLine4-abcd']

str = "-";

seq = ("a", "b", "c"); # 字符串序列

print str.join( seq );# a-b-c

字符串去空格操作:

str = "000000032100Runoob001230000000";

print str.strip( '0' );# 去除首尾字符 032100Runoob00123

str2 = " Runoob ";

print str2.strip();# 去除首尾空格Runoob

str = " this is string example....wow!!! ";

print str.lstrip();# this is string example....wow!!!

str = "88888888this is string example....wow!!!8888888";

print str.lstrip('8');# this is string example....wow!!!8888888

str = " this is string example....wow!!! ";

print str.rstrip();# this is string example....wow!!!

str = "88888888this is string example....wow!!!8888888";

print str.rstrip('8');# 88888888this is string example....wow!!!

字符串大小写操作:

str = "this is string example....wow!!!";

print "str.upper() : ", str.upper()# str.upper() : THIS IS STRING EXAMPLE....WOW!!!

str = "THIS IS STRING EXAMPLE....WOW!!!";

print str.lower();# this is string example....wow!!!

str = "THIS IS STRING EXAMPLE....WOW!!!";

print str.isupper();# True

str = "THIS is string example....wow!!!";

print str.isupper();# False

str = "THIS is string example....wow!!!";

print str.islower();# False

str = "this is string example....wow!!!";

print str.islower();# True

5. 变量

5.1 变量的概念?

变量是计算机内存中的

一块区域

,存储

规定范围

内的

,当中的

可以

改变

的,通俗的说

变量就是给一块数据起个名字

变量命名规则:

1)变量名由字母、数字、下划线组成;

2)老生常谈:

数字不能开头

3)不能使用关键字;

对 变量的命名 规则,总结成一句话就是:

要符合标识符的命名规范!

插入一个注意

两个对象相等

两个对象

是同一个对象

两个概念。

请注意,你没看错,就是

两个概念。

请注意我们的每一个用词,这是

数学

不是

哲学

s1 = {'Jiang':'Python'}

import copy

s2 = copy.deepcopy(s1)

print(s2) # {'Jiang': 'Python'}

print(id(s1),id(s2))

print(s1==s2)

5.2 变量的运算

6f75e4550cdbe34462875ca2bda303aa.png

5c8f360bffdd5230a8a6a3b881a769e0.png

变量的运算

就是正常的 四则运算 ,需要注意的是在运算过程中含有

浮点数

,那么它返回的就是一个

浮点数类型

课后作业

a,b = 6,8

我想让 a=8,b=6 怎么才能实现?

参考答案

a,b = 6,8

a,b = b,a# 方案一(个人理解:这个方法只适合在练习时使用,不太适合在程序编写时使用)

tmpe = a# 方案二(对 变量 的灵活使用)

a = b

b = tmpe

print('a = %d, b = %d'%(b,a))# 方案三(对 占位符 的灵活使用)

b = b - a# 方案四(对 算术运算符 的灵活使用)

a = b + a

b = a - b

print(a,b)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值