前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Ptyhon基础语法入门二

Ptyhon基础语法入门二

作者头像
数据山谷
发布2020-11-24 09:47:24
2710
发布2020-11-24 09:47:24
举报
文章被收录于专栏:数据山谷数据山谷

通过上篇文章的讲解已经和大家交流了Python的数据类型和变量。尤其是字符串和数字类型在平时的使用频率最高。这里给大家提个醒,一定要多多练习,掌握不同数据类型的使用场景。本次主要讲解其他数据类型的使用及转换函数和运算符的使用。具体内容如下:

1、数据类型详解

2、数据类型转换

3、运算符详解

4、运算符优先级

  • 字符串类型

字符串在平常编程过程中经常使用,尤其是对字符串进行处理时。我们在做数据分析时经常对字符串进行截取。

例如:

lisi@163.com 邮箱地址。我们想定义一个字符串变量,取出lisi用户名。

可以通过下标进行取出。

代码语言:javascript
复制
email = 'lisi@163.com'
print(email)
# lisi@163.com
print(email[0])
# l
print(email[0:4])
# lisi

在Python中通过索引和【】来截取字符串的内容。

语法结构是str[头坐标:尾坐标],也可以是str[坐标]

截取字符串时从指定索引位置开始,不包含尾坐标的内容。

代码语言:javascript
复制
email = 'lisi@163.com'
print(email[0])
# l
print(email[1:])
# isi@163.com
print(email[5:])
# 163.com

当然也可以通过[坐标:]来实现从某个位置截取后续所有的字符串内容。

代码语言:javascript
复制
print(email[1:])
# isi@163.com
print(email[5:])
# 163.com
print(email[-4:])
# .com
print(email[-1:])
# m
print(email[:-4])
# lisi@163

通过以上的例子大家只要能够掌握开头索引和结尾索引的规律。就能够轻松的截取字符串中指定的内容。

  • 列表

列表是Python中使用最频繁的数据类型。可以存储字符、数字、字符串、甚至是列表类型的数据。列表通过[ ]标识来截取相应的内容。

例如:一条商品记录,存储到一个列表中。

代码语言:javascript
复制
myList = ['iPhone12', 'iMac', 'oppo', 'HuaWei', 'XiaoMi']
print(myList[0])
# iPhone12
print(myList[0:3])
# ['iPhone12', 'iMac', 'oppo']
print(myList[2:])
# ['oppo', 'HuaWei', 'XiaoMi']

列表的索引从左到右是从0开始,从右到左是从-1开始。相信通过上面字符串的对比,很容易掌握。接下来我在介绍一下列表的一些特殊操作。 +是列表的连接运算,*是重复操作

例如:

代码语言:javascript
复制
myBook = ['Python数据分析入门与实战']
print(myBook)
# ['Python数据分析入门与实战']
print(myBook + myList)
# ['Python数据分析入门与实战', 'iPhone12', 'iMac', 'oppo', 'HuaWei', 'XiaoMi']
print(myBook * 3)
# ['Python数据分析入门与实战', 'Python数据分析入门与实战', 'Python数据分析入门与实战']

通过这些特殊的操作可以减少很多工作量,批量生产想要的列表数据。

  • 元组

元组的形式和列表很相似,通过( )进行赋值,只能赋值一次,不允许对元组进行二次赋值。

例如:

代码语言:javascript
复制
myTuple = ('iPhone12', 'iMac', 'oppo', 'HuaWei', 'XiaoMi')
print(myTuple)
# ('iPhone12', 'iMac', 'oppo', 'HuaWei', 'XiaoMi')
myTuple[0] = 'iPhone12'
# TypeError......
  • 字典

字典是通过键值对进行存储的,与列表不同,没有索引的概念。通过{ : }标识来存取数据。

例如:

代码语言:javascript
复制
myDic = {'name': 'iPhone', 'type': 'pro', 'price': 9980, 'count': 1}
print(myDic)
# ('iPhone12', 'iMac', 'oppo', 'oppo', 'HuaWei', 'XiaoMi')
print(myDic['name'])
# iPhone

字典中Key是关键字,Value是值。都是一一对应的。

代码语言:javascript
复制
print(myDic.keys())
# dict_keys(['name', 'type', 'price', 'count'])
print(myDic.values())
# dict_values(['iPhone', 'pro', 9980, 1])

可以使用字典中的内置函数keys()和values()进行获取。

通过以上四种数据类型的介绍,相信大家已经对Python中常用的字符串、元组、列表、字典有深入的了解了。接下来在给大家介绍下不同数据类型之间的转换。

int(x [,base])

将x转换为一个整数

long(x [,base] )

将x转换为一个长整数

float(x)

将x转换到一个浮点数

complex(real [,imag])

创建一个复数

str(x)

将对象 x 转换为字符串

repr(x)

将对象 x 转换为表达式字符串

eval(str)

用来计算在字符串中的有效Python表达式,并返回一个对象

tuple(s)

将序列 s 转换为一个元组

list(s)

将序列 s 转换为一个列表

set(s)

转换为可变集合

dict(d)

创建一个字典。d 必须是一个序列 (key,value)元组。

frozenset(s)

转换为不可变集合

chr(x)

将一个整数转换为一个字符

unichr(x)

将一个整数转换为Unicode字符

ord(x)

将一个字符转换为它的整数值

hex(x)

将一个整数转换为一个十六进制字符串

oct(x)

将一个整数转换为一个八进制字符串

例如:

代码语言:javascript
复制
print(int('1001',2))
# 9
print(int('1001',10))
# 1001
print(str(1000)+'200')
# 1000200
print(tuple(['a','b','c','d']))
# ('a', 'b', 'c', 'd')
print(list(('a','b','c','d')))
# ['a', 'b', 'c', 'd']
print(ord('a'))
# 97

结合各个函数的说明,大家可以注意测试,找到数据类型转换的规律。通过这些内容的函数就能够把不同数据类型之间的数据进行转换。这里教给大家一个Type()函数来检验是否转换成功。

例如:

代码语言:javascript
复制
print(type(myDic))
# <class 'dict'>
print(type(myTuple))
# <class 'tuple'>

接下来我们来开始今天的第二部分内容运算符及优先级。

运算符主要讲解算术运算符、比较运算符、赋值运算符、逻辑运算符等。

算术运算符

+

加 - 两个对象相加

-

减 - 得到负数或是一个数减去另一个数

*

乘 - 两个数相乘或是返回一个被重复若干次的字符串

/

除 - x除以y

%

取模 - 返回除法的余数

**

幂 - 返回x的y次幂

//

取整除 - 返回商的整数部分(向下取整)

赋值运算符

=

简单的赋值运算

+=

加法赋值运算符

-=

减法赋值运算符

*=

乘法赋值运算符

/=

除法赋值运算符

%=

取模赋值运算符

**=

幂赋值运算符

//=

取整除赋值运算符

例如:

代码语言:javascript
复制
num1 = 100
num2 = 20 
print(num1,num2)
# 100 20
num1 += 50
print(num1)
# 150
num1 **= 2
print(num1)
# 22500
print(10//3)
# 3

比较运算符

==

等于 - 比较对象是否相等

!=

不等于 - 比较两个对象是否不相等

>

大于 - 返回x是否大于y

<

小于 - 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。

>=

大于等于 - 返回x是否大于等于y。

<=

小于等于 - 返回x是否小于等于y。

例如:

商品的平均价格是100,高于平均价格退差价。需要进行判断。

代码语言:javascript
复制
price = 120
avgPrice = 100
print(price > avgPrice)
# True
print(price < avgPrice)
# False

逻辑运算符

and

x and y

or

x or y

not

not x

例如:

代码语言:javascript
复制
判断一年是否是闰年:能够被4整除且不能被100整除,或者能够被400整除。
year = 2020
isRun = year % 4 == 0 and year %100 !=0 or year % 400 == 0 
print(isRun)
# True

运算符多了,就像数学计算也有优先级一样。我们来看下Python的运算符优先级。做到先后有序。

**

指数 (最高优先级)

~ + -

按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)

* / % //

乘,除,取模和取整除

+ -

加法减法

>> <<

右移,左移运算符

&

位 'AND'

^ |

位运算符

<= < > >=

比较运算符

<> == !=

等于运算符

= %= /= //= -= += *= **=

赋值运算符

is is not

身份运算符

in not in

成员运算符

not and or

逻辑运算符

本次主要详细讲解了数据类型和运算符。相当于把Python中基础的知识学习了。后期还会根据现有知识介绍条件和循环相关的内容。期待大家能够有收获,一起学习Python,共同进步。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-11-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据山谷 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档