Python入门到精通之零基础学习Python变量与数据类型
小职 2021-06-10 来源 :数据STUDIO 阅读 522 评论 0

摘要:本文主要介绍了Python入门到精通之零基础学习Python变量与数据类型,通过具体的内容向大家展现,希望对大家Python的学习有所帮助。

本文主要介绍了Python入门到精通之零基础学习Python变量与数据类型,通过具体的内容向大家展现,希望对大家Python的学习有所帮助。

Python入门到精通之零基础学习Python变量与数据类型


Python(英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/)是一种广泛使用的解释型、高级和通用的编程语言。Python支持多种编程范型,包括函数式、指令式、结构化、面向对象和反射式编程。它拥有动态类型系统和垃圾回收功能,能够自动管理内存使用,并且其本身拥有一个巨大而广泛的标准库。

 

Python有着范围广泛的基本数据类型。Python的一个非常有用方面就是容器类型的概念,容器有二种基本形式:序列和映射。有次序的序列类型是列表(动态数组)、元组和字符串。所有序列类型都是位置索引的(从0到长度?1),并且除了字符串,都可以包含任意类型的对象,在同一个序列中包括多种类型的对象。字符串和元组是不可变的,使得它们成为字典的键的完美候选者。在另一方面,列表是可变的,元素可以被插入、删除、修改、添加或就地排序。

 

本篇内容总结包括从变量、输入输出到数据类型的基本介绍和常用方法。

 

一、变量与类型转换

变量赋值

>>> x=5

>>> x

5

变量计算

>>> x+2  # 两个变量的和

7

>>> x-2  # 两个变量的减法

3

>>> x*2  # 两个变量相乘

10

>>> x**2 # 求变量的幂

25

>>> x%2  # 变量的余数

1

>>> x/float(2) # 变量的除法

2.5

类型和类型转换

 Python入门到精通之零基础学习Python变量与数据类型

二、获取帮助

>>> help(str)

三、输入与输出

print

>>> print("Hello world!")

 

>>> msg = "Hello world!"

>>> print(msg)

Input

Input程序可以提示用户输入。所有输入都存储为字符串。

 

提示输入值

>>> name = input("What's your name? ")  

>>> print("Hello, " + name + "!")

提示输入数字

>>> age = input("How old are you? ")

>>> age = int(age)

>>> pi = input("What's the value of pi? ")

>>> pi = float(pi)

四、字符串

字符串是 Python 中最常用的数据类型。我们可以使用引号('或")来创建字符串。创建字符串很简单,只要为变量分配一个值即可。

 

>>> my_string = 'thisStringIsAwesome'  

>>> my_string

'thisStringIsAwesome'

字符串运算

>>> my_string * 2   # 乘法

'thisStringIsAwesomethisStringIsAwesome'  

>>> my_string + 'Innit' # 拼接

'thisStringIsAwesomeInnit'  

>>> 'm' in my_string # 是否存在

True

# 索引从零开始  

>>> my_string[3]

>>> my_string[4:9]

字符串方法

>>> my_string.upper()    # 字符串大写

>>> my_string.lower()    # 字符串小写

>>> my_string.count('w') # 计算字符串的元素

>>> my_string.replace('e', 'i') # 替换字符串元素

>>> my_string.strip()    # 去空格

五、列表

列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。

 

列表的数据项不需要具有相同的类型。

 

列表以特定的顺序存储一系列项目。列表允许将信息集存储在一个地方,无论只有几个项还是数百万项。列表是Python最强大的特性之一,新程序员可以很容易地访问它,它们将编程中的许多重要概念联系在一起。

 

使用方括号定义列表,使用逗号分隔列表中的各个项目。使用列表的复数名称,使您的代码更容易阅读。

 

>>> a = 'is'

>>> b = 'nice'

>>> my_list = ['my', 'list', a, b]

>>> my_list2 = [[4,5,6,7], [3,4,5,6]]

 

>>> users = ['val', 'bob', 'mia', 'ron', 'ned']

更改列表值

一旦定义了列表,就可以更改列表中的单个元素。这可以通过引用要修改的项的索引来实现。

 

>>> users[0] = 'valerie'

>>> users[-2] = 'ronald'

列表切片与索引

可以使用列表中的任何一组元素。根据列表中的元素的位置(称为索引)来访问它们,列表的一部分称为片。要切片列表,首先从您想要的第一个项目的索引开始,然后添加冒号和您想要的最后一个项目之后的索引。去掉列表开始处的第一个索引,去掉列表结束处的最后一个索引。

 

第一个元素的索引是0,第二个元素的索引是1,以此类推。

 

负索引指的是列表末尾的项。要获得特定的元素,请先写出列表的名称,然后在方括号中写出元素的索引。

 

# 子集

>>> my_list[1]   # 选择索引1的项

>>> my_list[-3]  # 最后选择第三项

# 切片

>>> my_list[1:3] # 选择索引1和索引2上的项

>>> my_list[1:]  # 选择索引0之后的项

>>> my_list[:3]  # 选择索引3之前的项

>>> my_list[:]   # 复制my_list

# 子集的子集

>>> my_list2[1][0]

>>> my_list2[1][:2]

列表运算

>>> my_list + my_list

['my', 'list', 'is', 'nice', 'my', 'list', 'is', 'nice']  

>>> my_list * 2

['my', 'list', 'is', 'nice', 'my', 'list', 'is', 'nice']  

>>> my_list2 > 4

True

列表方法

>>> my_list.index(a)     # 获取项目的索引

>>> my_list.count(a)     # 计算一个项目

>>> my_list.append('!')  # 每次追加一个项

>>> my_list.remove('!')  # 删除一个项目

>>> del(my_list[0:1])    # 删除一个项目

>>> my_list.reverse()    # 反向列表

>>> my_list.extend('!')  # 添加一个项目

>>> my_list.pop(-1)      # 删除一个项目

>>> my_list.insert(0,'!')# 插入一个项目

>>> my_list.sort()       # 排序的列表

遍历列表

列表可以包含数百万个项,因此Python提供了一种有效的方法来遍历列表中的所有项。当设置一个循环时,Python每次从列表中取出一项,并将其存储在一个临时变量中,为该临时变量提供了一个名称。这个名称应该是列表名称的单数版本。

 

缩进的代码块构成循环体,在循环体中可以处理每个单独的项。任何没有缩进的行在循环结束后运行。

 

>>> for bike in bikes:

...     print(bike)

向列表中添加元素

可以将元素添加到列表的末尾。

 

>>> bikes = []  

>>> bikes.append('trek')  

>>> bikes.append('redline')

>>> bikes.append('giant')

在特定位置插入元素

可以将它们插入到列表中的任何位置。

 

>>> users.insert(0, 'joe')

>>> users.insert(3, 'bea')

删除元素

可以根据元素在列表中的位置或项的值删除元素。如果你通过一个项的值来移除它,Python只移除第一个具有该值的项。

 

# 通过位置删除

>>> del users[-1]

# 通过值删除  

>>> users.remove('mia')

列表排序

方法的作用是永久地改变列表的顺序。sorted()函数返回列表的副本,保持原始列表不变。可以按字母顺序或反字母顺序对列表中的项目进行排序。还可以颠倒列表的原始顺序。

 

# 永久地对列表进行排序

>>> users.sort()

 

# 以反字母顺序永久地对列表进行排序

>>> users.sort(reverse=True)

 

# 临时排序

>>> print(sorted(users))

>>> print(sorted(users, reverse=True))

 

# 反向排序

>>> users.reverse()

列表推导式

>>> squares = [x**2 for x in range(1, 11)]

range()函数

可以使用range()函数有效地处理一组数字。range()函数默认从0开始,停止传递给它的数字下面的一个数字。可以使用list()函数来有效地生成大量的数字列表。

 

打印数字0-1000

>>> for number in range(1001):

...    print(number)

打印数字1-1001

>>> for number in range(1, 1001):

...    print(number)

列出从1到100万的数字

>>> numbers = list(range(1, 1000001))

简单统计

您可以在包含数字数据的列表上运行许多简单的统计数据。

 

最小值

 

>>> ages = [93, 99, 66, 17, 85, 1, 35, 82, 2, 77]

>>> youngest = min(ages)

最大值

 

>>> ages = [93, 99, 66, 17, 85, 1, 35, 82, 2, 77]

>>> oldest = max(ages)

求和

 

>>> ages = [93, 99, 66, 17, 85, 1, 35, 82, 2, 77]

>>> total_years = sum(ages)

>>> total_years

557

六、元组

元组与列表类似,但元组中的项不能被修改,即不可变数据类型。

 

>>> dimensions = (1920, 1080)

七、字典

字典存储在片段信息之间的建立联系。字典中的每一个项都是一个键-值对。当提供一个键时,Python将返回与该键相关联的值。可以循环遍历所有键-值对、所有键或所有值。

 

使用花括号来定义字典。使用冒号连接键和值,并使用逗号分隔单个键-值对。

 

>>> alien = {'color': 'green', 'points': 5}

获取字典值(查)

要获取单个键关联的值,需提供字典的名称,然后将键放在一组方括号中。如果需要的键不在字典中,就会出现错误。

 

还可以使用get()方法,如果键不存在,该方法将返回None,而不是错误。如果键不在字典中,还可以指定要使用的默认值。

 

>>> print("The alien's color is " + alien['color'])

"The alien's color is green"

>>> alien_0 = {'color': 'green', 'points': 5}

>>> alien_color = alien_0.get('color')

>>> alien_points = alien_0.get('points', 0)

>>> print(alien_color)

'green'

>>> print(alien_points)

None

添加一个新键值对(增)

可以在字典中存储任意数量的键值对,直到计算机内存耗尽为止。要向现有字典添加新的键-值对,请在方括号中给出字典的名称和新键,并将其设置为新值。

 

这还允许您从一个空字典开始,并在它们变得相关时添加键-值对。

 

>>> alien_0 = {'color': 'green', 'points': 5}

>>> alien_0['x'] = 0

>>> alien_0['y'] = 25

>>> alien_0['speed'] = 1.5

 

# 向空字典中添加新键值对

>>> alien_0 = {}

>>> alien_0['color'] = 'green'

>>> alien_0['points'] = 5

修改字典值(改)

可以修改与字典中任何键相关联的值。为此,给出字典的名称并将键括在方括号中,然后为该键提供新值。

 

>>> alien_0 = {'color': 'green', 'points': 5}

>>> print(alien_0)

  

>>> alien_0['color'] = 'yellow'  

>>> alien_0['points'] = 10

>>> print(alien_0)

删除字典键值对(删)

您可以从字典中删除任何想要的键-值对。为此,请使用del关键字和字典名称,后跟方括号中的键。这将删除键及其关联值。

 

>>> alien_0 = {'color': 'green', 'points': 5}

>>> print(alien_0)

>>> del alien_0['points']

>>> print(alien_0)

循环遍历字典

可以用三种方式循环遍历字典:可以循环遍历所有键-值对、所有键或所有值。字典只跟踪键和值之间的连接,它不跟踪字典中条目的顺序。如果希望按顺序处理信息,可以对循环中的键进行排序。

 

循环变量所有键值对

>>> fav_numbers = {'eric': 17, 'ever': 4}

>>> for name, number in fav_numbers.items():

...    print(name + ' loves ' + str(number))

循环变量所有键

>>> av_numbers = {'eric': 17, 'ever': 4}

>>> for name in fav_numbers.keys():

...     print(name + ' loves a number')

循环变量所有值

>>> av_numbers = {'eric': 17, 'ever': 4}

>>> for number in fav_numbers.values():

...     print(str(number) + ' is a favorite')

按顺序循环遍历所有键

>>> av_numbers = {'eric': 17, 'ever': 4}

>>> for name in sorted(fav_languages.keys()):

...   print(name + ": " + language)

列表中嵌套字典

通过append()将字典嵌入列表

# 建立一个空列表

>>> users = []

# 创建一个字典,并将其嵌入到列表中

>>> new_user = {

...     'last': 'fermi',

...     'first': 'enrico',

...     'username': 'efermi',

...     }

>>> users.append(new_user)

# 再创建另一个字典,并将其嵌入到列表中

>>> new_user = {

...     'last': 'curie',

...     'first': 'marie',

...     'username': 'mcurie',

...     }

>>> users.append(new_user)

# 打印出列表中所有的信息

>>> for user_dict in users:

...     for k, v in user_dict.items():

...         print(k + ": " + v)

...   print("\n")

直接定义一个字典列表

>>> users = [

...     {

...        'last': 'fermi',

...        'first': 'enrico',

...        'username': 'efermi',

...   },  

...   {

...        'last': 'curie',

...        'first': 'marie',

...        'username': 'mcurie',

...   },  

... ]

# 打印所有users的信息

>>> for user_dict in users:

...     for k, v in user_dict.items():

...         print(k + ": " + v)

...   print("\n")

字典内嵌套列表

在字典中存储列表,允许将多个值与同一个键关联。

 

# 为每个人存储多种语言。

>>> fav_languages = {

...     'jen': ['python', 'ruby'],

...     'sarah': ['c'],

...     'edward': ['ruby', 'go'],

...     'phil': ['python', 'haskell'],

... }

# 显示每个人的所有回答。

>>> for name, langs in fav_languages.items():

...     print(name + ": ")

>>> for lang in langs:

...     print("- " + lang)

字典内嵌套字典

可以将一个字典存储在另一个字典中。在这种情况下,与键相关联的每个值本身就是一个字典。

 

>>> users = {

...     'aeinstein': {

...         'first': 'albert',

...         'last': 'einstein',

...         'location': 'princeton',

...         },

...     'mcurie': {

...         'first': 'marie',

...         'last': 'curie',

...         'location': 'paris',

...         },

... }

>>> for username, user_dict in users.items():

...     print("\nUsername: " + username)

...     full_name = user_dict['first'] + " "

...     full_name += user_dict['last']

...     location = user_dict['location']

...     print("\tFull name: " + full_name.title())

...     print("\tLocation: " + location.title())

 

Username: aeinstein

 Full name: Albert Einstein

 Location: Princeton

 

Username: mcurie

 Full name: Marie Curie

 Location: Paris

顺序字典 OrderedDict

标准的Python字典不会跟踪键和值的添加顺序,它们只保留每个键及其值之间的关联。使用OrderedDict可以保持键和值的添加顺序。

 

>>> from collections import OrderedDict

# 存储每个人的语言。

# 跟踪最先响应的人。

>>> fav_languages = OrderedDict()

>>> fav_languages['jen'] = ['python', 'ruby']

>>> fav_languages['sarah'] = ['c']

>>> fav_languages['edward'] = ['ruby', 'go']

>>> fav_languages['phil'] = ['python', 'haskell']

# 按照输入的顺序显示结果

>>> for name, langs in fav_languages.items():

>>>     print(name + ":")

>>>     for lang in langs:

>>>         print("- " + lang)

 

jen:

- python

- ruby

sarah:

- c

edward:

- ruby

- go

phil:

- python

- haskell 


我是小职,记得找我

✅ 解锁高薪工作

✅ 免费获取基础课程·答疑解惑·职业测评

Python入门到精通之零基础学习Python变量与数据类型

本文由 @小职 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程