网站性能检测评分
注:本网站页面html检测工具扫描网站中存在的基本问题,仅供参考。
python3数据类型
10分钟学会Python的变量和数据类型 推广视频课程
对任何语言来说,变量和数据类型都是非常重要和基础的内容。这篇文章就带你用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基础之数据类型介绍 公司视频课程
引入
任何一门语言比如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基本数据类型之:字符串类型 行业视频课程
从本章开始,逐个介绍python中的数据类型,这也是学习一门编程语言的基础与必备;
Python中常用的数据类理有:
字符串类型
数字类型(整数、浮点、复数)
列表类型
元组类型
字典类型
日期类型
字符串类型
字符串类型是用双引号(" ") 或者单引号 (' ')括起来的一个或多个字符;
字符串可以被保存在变量中,也可以单独存在;
注意空字符串与空格字符串的区别:
在字符串中使用转义符:
可以使用函数type()一个变量或常量是什么类型:
字符串长度:(一个中文算1个长度)
字符串连接:
字符串索引:(索引从0开始,-1是最后一位)
字符串切片:(两个冒号,开始到结束,::)
字符串的处理方法还有很多哦:
以上是python中字符串类型的介绍与操作,大家赶紧练练吧!!
「学习python3连载系列-7」Python数字类型的关系 公司视频课程
数字类型中的整数类型、浮点数类型与复数类型的关系是怎样的呢?
三种类型存在一种逐渐”扩展“的关系:
整数 --> 浮点数 --> 复数 (整数的是浮点数的特例,浮点数是复数的特例)
复数为最宽类型
整数为最窄类型
不同数字类型之间可以进行混合运算,运算后生成结果为最宽类型
如:
但可以强制将宽度类型转换成想要的数字类型,用3个函数进行强制转换:
int()
float()
complex()
如:
但是复数不能被强制转换成浮点型或整数型:
pythone 丰富的运算符进行数字运算,有哪下运算符:
数字类型存在以上一些关系,计算的时候注意结果。