中企动力 > 头条 > python3数据类型

网站性能检测评分

注:本网站页面html检测工具扫描网站中存在的基本问题,仅供参考。

python3数据类型

10分钟学会Python的变量和数据类型 推广视频课程

img

韶碧

关注

对任何语言来说,变量和数据类型都是非常重要和基础的内容。这篇文章就带你用10分钟的时间,学会Python的变量和数据类型这个知识点。

一、知识点

python 关键字

变量的定义与赋值

input() 函数

字符串的格式化

二、实验步骤

每一种编程语言都有它们自己的语法规则,就像我们所说的外语

2.1 关键字和标识符

下列的标识符是 Python3 的关键字,并且不能用于通常的标识符。关键字必须完全按照下面拼写:

False def if raiseNone del import returnTrue elif in tryand else is whileas except lambda withassert finally nonlocal yieldbreak for not class from or continue global pass

这些内容可以在 Python3 解释器中得到:

在 Python 中 我们不需要为变量指定数据类型。所以你可以直接写出

abc = 1

,这样变量

abc

就是整数类型。如果你写出

abc = 1.0

,那么变量

abc

就是浮点类型。

>>> a = 13>>> b = 23>>> a + b36

通过上面的例子你应该理解了如何在 Python 中定义变量,也就是只需要输入变量名和值就行了。Python 也能操作字符串,它们用单引号或双引号括起来,就像下面这样。

>>> 'ShiYanLou''ShiYanLou'>>> 'ShiYanLou\'s best'"ShiYanLou's best">>> "Hello World!"'Hello World!'

2.2 从键盘读取输入

通常情况下,Python 的代码中是不需要从键盘读取输入的。不过我们还是可以在 Python 中使用函数

input()

来做到这一点,

input()

有一个用于打印在屏幕上的可选字符串参数,返回用户输入的字符串。

我们来写一个程序,它将会从键盘读取一个数字并且检查这个数字是否小于 100。这个程序名称是 testhundred.py。还记得如何使用 vim 吗?忘了的话可以看看下面的动图:

#!/usr/bin/env python3number = int(input("Enter an integer: "))if number <= 100: print("Your number is smaller than equal to 100")else: print("Your number is greater than 100")

如果

number

小于 100,输出“Your number is smaller than 100”,如果大于 100,输出“Your number is greater than 100”。

程序运行起来就像这样:(运行时别忘记给文件添加可执行权限,如何添加权限请回想上节实验内容,程序运行时若报错权限不够,为文件添加权限即可)

$ ./testhundred.pyEnter an integer: 13Your number is smaller than 100$ ./testhundred.pyEnter an integer: 123Your number is greater than 100

下一个程序我们来计算投资:

#!/usr/bin/env python3amount = float(input("Enter amount: ")) # 输入数额inrate = float(input("Enter Interest rate: ")) # 输入利率period = int(input("Enter period: ")) # 输入期限value = 0year = 1while year <= period: value = amount + (inrate * amount) print("Year {} Rs. {:.2f}".format(year, value)) amount = value year = year + 1

运行程序:

$ ./investment.pyEnter amount: 10000Enter Interest rate: 0.14Enter period: 5Year 1 Rs. 11400.00Year 2 Rs. 12996.00Year 3 Rs. 14815.44Year 4 Rs. 16889.60Year 5 Rs. 19254.15

while year <= period:

的意思是,当

year

的值小于等于

period

的值时,下面的语句将会一直循环执行下去,直到

year

大于

period

时停止循环。

Year {} Rs. {:.2f}".format(year, value)

称为字符串格式化,大括号和其中的字符会被替换成传入

str.format()

的参数,也即

year

value

。其中

{:.2f}

的意思是替换为 2 位精度的浮点数。

2.3 一些例子

一些关于变量和数据类型的例子。

2.3.1. 求 N 个数字的平均值

下面的程序用来求 N 个数字的平均值。

#!/usr/bin/env python3N = 10sum = 0count = 0print("please input 10 number:")while count < N: number = float(input()) sum = sum + number count = count + 1average = sum / Nprint("N = {}, Sum = {}".format(N, sum))print("Average = {:.2f}".format(average))

运行程序:

$ ./averagen.py1.23.43.533.22462.445.5N = 10, Sum = 65.2Average = 6.52

2.3.2. 温度转换

在下面的程序里,我们使用公式 C = (F - 32) / 1.8 将华氏温度转为摄氏温度。

#!/usr/bin/env python3fahrenheit = 0print("Fahrenheit Celsius")while fahrenheit <= 250: celsius = (fahrenheit - 32) / 1.8 # 转换为摄氏度 print("{:5d} {:7.2f}".format(fahrenheit , celsius)) fahrenheit = fahrenheit + 25

{:5d}

的意思是替换为 5 个字符宽度的整数,宽度不足则使用空格填充。

运行程序:

$ ./temperature.pyFahrenheit Celsius 0 -17.78 25 -3.89 50 10.00 75 23.89 100 37.78 125 51.67 150 65.56 175 79.44 200 93.33 225 107.22 250 121.11

2.4 单行定义多个变量或赋值

你甚至可以在一行内将多个值赋值给多个变量。

>>> a , b = 45, 54>>> a45>>>b54

这个技巧用来交换两个数的值非常方便。

>>> a, b = b , a>>> a54>>>b45

要明白这是怎么工作的,你需要学习元组(*tuple*)这个数据类型。我们是用逗号创建元组。在赋值语句的右边我们创建了一个元组,我们称这为元组封装(*tuple packing*),赋值语句的左边我们则做的是元组拆封 (*tuple unpacking*)。

下面是另一个元组拆封的例子:

>>> data = ("shiyanlou", "China", "Python")>>> name, country, language = data>>> name'shiyanlou'>>> country'China'>>>language'Python'

三、总结

完成这个实验我们应该了解 python 关键字有哪些(在这里不要求全部记住),如何赋值变量,怎样从键盘读取输入,以及字符串的格式化,关注北京达内教育在这里可以了解更多有关字符串格式化的信息。

python基础之数据类型介绍 公司视频课程

img

赫惜蕊

关注

引入

任何一门语言比如C++,Java,Perl,Python语法上的招式主要包含变量类型,数据结构,循环控制,函数,文件,异常处理,进程/线程等。大体就这几个方面,万丈高楼平地起,我们先从最简单的变量和数据入手。

首先要说明的是python的是动态语言,不像java是强制类型语言,是静态语言也就是说你在定义变量的时候就要指定类型,而python是动态的语言,是边执行变编译,在定义变量的时候不需要指定数据类型,在赋值的时候系统会自动为其指定类型,分配内存,这样就很灵活。

先罗列一下Python提供的基本数据类型:数值(整型、浮点型、复数、布尔型等)、字符串、列表、元组、字典、集合等,将它们简单分类如下:

数值numbers

Python Number 数据类型用于存储数值,分为整数int和浮点数float。

整数:比如1,200,-1000,0,也有用十六进制表示的比如0xff00等

浮点数:比如1.11,12,13,-10.02,也有比较大的浮点数比如2.12x10^9

还有其他格式及常见操作符如下:

字符串String

python的字符串以''(单引号)或者""(双引号)或者''''''(三引号)括起来的随意文本都是字符串

'abc',"hello world",'''This is my first code'''

有一点要注意若字符串里面包含特殊的字符,可以用转义\进行转义

word='Xiao Ming said \"I\'am full\".'

print(word)

>>Xiao Ming said "I'am full".

另外三引号一般用在类或者函数的开头用来做大段的注释用

说到字符串一点要提一下python的字符串format格式:一般有两种

1)%操作符

name="xiao ming"

age=20

print("Your name is %s,age is %d"%(name,age))

2).format

print("Your name is {0},age is {1}".format(name,age))

.format的用法比较灵活,参数的顺序和格式化的顺序不必完全相同,一般推荐用format,而且也是Python3里面的官方力推,之所以保留%主要是为了兼容以前的代码

print("age is {1},your name is {0},".format(name,age))

再来看看字符串的一些常见操作

布尔值bool

Python中的布置值,只有True和False两种(一定要注意大小写),布尔值的运算可以用and,or 和not

A and B ,表示A和B都为True,最后的运算结果才是True.

A or B , 表示A或者B其中一个True,最后的结果就是True.

not,是非运算,它是一个单目的运算,就是把True变False,把False变True.

if语句通过判断布尔类型来控制程序的执行路径,同时在 Python 中数据有隐式的真假值,可以使代码变得简短有效,如下

空值

Python的空值是用None表示,None不是0,也不是空字符串,也不是False,它是一个特殊的空值,我们可以用python的内置函数type来看一下,然后分别0,空字符,False比较一下,看看它到底是何物

>>>type(None)

>>> None == 0

False

>>> None == ''

>>> None == None

True

>>> None == False

列表(List)

Python 可使用语法糖[]表示列表,其中的元素可以是任何类型,以顺序存储的方式动态储存数据:# 定义 L = [] # 推荐方式 L = list() L = ['Windrivder', 21, {'name': 'xiaoming'}] # 多重赋值技巧 name, age, other = L # 列表切片参考str # 常用方法 L.append('a') # ['Windrivder', 21, {'name': 'xiaoming'}, 'a'] L.pop() # ['Windrivder', 21, {'name': 'xiaoming'}],还可以指定下标删除元素 L.extend(L1) # 合并列表 L1 L.insert(1, 'a') # 在下标为1的位置插入'a' L.index('a') # 同字符串的index() L.remove('a') # 删除操作 L.count('a') # 求某个值的个数 L.reverse() # 反转L = [2, 4, -1, 9, -5, 6] L.sort() # sort()排序,使用非常灵活 L.sort(reverse=True) # 反序 L.sort(key=abs) # 传入函数关键字作为排序规则 for l1, l2 in zip(['windrivder', 21], ['jack', 22]): # zip 同时遍历两个列表

元组(Tuple)

元组与列表不同的是,元组是不可变类型(immutable),不能对元素进行修改,但内存可以明确知道需要分配多少空间给元组。

字典(Dictionaries)

字典是通过键值对的方式进行存储,占用大量的内存而获得极快的查找和插入速度,而列表刚好相反,查找和插入速度随着元素的增加而变慢,但占用的内存较小。字典虽然是可变类型,但因为它的 value 的位置是根据 key 计算出来的,因此 key 必须是不可变对象,这样才能确保字典的正确使用。

集合(Set)

集合与list类似,但集合中不允许有重复的元素,普通集合是可变的,Frozenset是不可变的,我们可以利用集合的特性消除重复元素或做并、交、差等数学操作

自定义数据类型

Python 允许通过继承去自定义数据类型,很多第三方库或框架都有类似的应用,这里简单实现了一个供参考:

题外话

今天在我们的直播课中也会讲到python的内容,想要学习的小伙伴抓紧入群了,在群里可以和大家一起交流一起进步,还有各种学习资源和免费公开课直播通知。

「学习python3连载系列-5」Python基本数据类型之:字符串类型 行业视频课程

img

复活节

关注

从本章开始,逐个介绍python中的数据类型,这也是学习一门编程语言的基础与必备;

Python中常用的数据类理有:

字符串类型

数字类型(整数、浮点、复数)

列表类型

元组类型

字典类型

日期类型

字符串类型

字符串类型是用双引号(" ") 或者单引号 (' ')括起来的一个或多个字符;

字符串可以被保存在变量中,也可以单独存在;

注意空字符串与空格字符串的区别:

在字符串中使用转义符:

可以使用函数type()一个变量或常量是什么类型:

字符串长度:(一个中文算1个长度)

字符串连接:

字符串索引:(索引从0开始,-1是最后一位)

字符串切片:(两个冒号,开始到结束,::)

字符串的处理方法还有很多哦:

以上是python中字符串类型的介绍与操作,大家赶紧练练吧!!

「学习python3连载系列-7」Python数字类型的关系 公司视频课程

img

隐藏

关注

数字类型中的整数类型、浮点数类型与复数类型的关系是怎样的呢?

三种类型存在一种逐渐”扩展“的关系:

整数 --> 浮点数 --> 复数 (整数的是浮点数的特例,浮点数是复数的特例)

复数为最宽类型

整数为最窄类型

不同数字类型之间可以进行混合运算,运算后生成结果为最宽类型

如:

但可以强制将宽度类型转换成想要的数字类型,用3个函数进行强制转换:

int()

float()

complex()

如:

但是复数不能被强制转换成浮点型或整数型:

pythone 丰富的运算符进行数字运算,有哪下运算符:

数字类型存在以上一些关系,计算的时候注意结果。

img

在线咨询

建站在线咨询

img

微信咨询

扫一扫添加
动力姐姐微信

img
img

TOP