前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >快速掌握Python基础语法(下)

快速掌握Python基础语法(下)

作者头像
SuperFeng
发布2019-09-26 16:05:55
4700
发布2019-09-26 16:05:55
举报
文章被收录于专栏:SuperFengSuperFeng

接着上一篇,这篇继续来讲 Python 的基础语法,如果你还没有看过之前的那一篇文章,可以看一下。

字典

字典是一系列键-值对,键-值对之间用 冒号 : 连接,用花括号 { } 表示字典。

代码语言:javascript
复制
# 字典
alien_0 = {'color': 'green', 'points': 5}
print(alien_0['color'])

# green

给字典增添新键-值对,可以用如下方法:将值赋给字典名+方括号括起来新键名

代码语言:javascript
复制
# 给字典增添新键值对
alien_0['y_position'] = 0
print(alien_0['y_position'])

# 0

遍历字典时,键-值对的获取顺序是不可测的。

输入和 while 循环

input( ) 函数获取输入。

代码语言:javascript
复制
# 输入
message = input("Tell me something, and I will repeat it back to you:")
print(message)

while 循环。

代码语言:javascript
复制
# while 循环
current_number = 1
while current_number <= 5:
    print(current_number)
    current_number += 1

# 1
# 2
# 3
# 4
# 5

可用 break 直接退出循环,用 continue 进行下一次循环。

函数

用关键字 def 告诉 Python 你要去定义一个函数。用三个引号括起去给函数注释,说明该函数的作用。

代码语言:javascript
复制
# 函数
def greet(username):
    """简单问候语"""
    print('hello,' + username.title() + '!')


greet('superfeng')

# hello,Superfeng!

向函数传递实参时,可以按顺序传递,关键字传递(注意必须正确指定函数定义的形参名),默认值。

在 Python 中,向函数传递的实参都会被函数直接永久地修改,如果想在函数用实参的副本进行操作,就要用到向函数传递列表切片的方法,这样在传递实参之前就会就列表进行备份。

传递任意数量的实参,就要用 星号* ,会把任意数量的实参都封装在一个元组中。

代码语言:javascript
复制
# 传递任意数量的实参
def make_pizza(*toppings):
    """打印任意数量的实参"""
    print(toppings)


make_pizza('mushrooms', 'green papers', 'extra cheese')

# ('mushrooms', 'green papers', 'extra cheese')

传递任意数量的关键字实参,要用到 两个星号** ,这会将传入的关键字实参封装到一个字典中。

导入函数模块的方法:import + 要导入模块的名称。调用导入模块中的函数时,要使用 句点. 访问。在导入模块时,可以用 as 给模块起别名。

代码语言:javascript
复制
# 调用模块中的函数
import pizza


pizza.make_pizza('mushrooms', 'green papers', 'extra cheese')

# ('mushrooms', 'green papers', 'extra cheese')

在 Python 中,用关键字 class 创建,按照约定首字母大写的名称指的是,应该用驼峰命名法。类中的函数称为方法。特殊方法 _init(self, name1, name2)_ 可以看做向类传递参数的一个接口,其中通过形参 self 向类中其它方法传递参数。创建和调用一个类如下方法:

代码语言:javascript
复制
# 创建一个类
class Dog:
    """一次模拟小狗的简单尝试"""

    def __init__(self, name, age):
        """初始化属性 name 和 age"""
        self.name = name
        self.age = age

    def sit(self):
        """模拟小狗被命令时蹲下"""
        print(self.name.title() + ' is now sitting.')

    def roll_over(self):
        """模拟小狗被命令时打滚"""
        print(self.name.title() + ' rolled over!')


# 调用一个类
my_dog = Dog('willie', '6')
print(my_dog.name.title() + ' say hello!')
my_dog.roll_over()

# Willie say hello!
# Willie rolled over!

可以通过三种方式修改属性的值直接通过实例进行修改,通过方法进行设置,通过方法进行递增

继承

继承时,子类的括号中必须包括父类的名字。让子类继承父类的属性时,要用到 super( ) 函数,父类也称为超类(superclass)

代码语言:javascript
复制
# 继承
class SpecialDog(Dog):
    """子类:特殊的狗"""
    def __init__(self, name, age):
        # 用 super() 函数继承父类属性
        super().__init__(name, age)


his_dog = SpecialDog('tom', 6)
his_dog.roll_over()

# Tom rolled over!

如果在子类中重新写了一个与父类同名的方法,创建实例时会自动忽略父类。

文件

读取文件:关键字 with 可以在不需要访问文件之后将其关闭。文件路径可以用相对路径绝对路径进行查找。

代码语言:javascript
复制
# 读取文件
file_path = 'C:\\Users\\Desktop\\data.txt'
with open(file_path) as file_object:
    contents = file_object.read()
    print(contents)

存储数据

可以将 Python 文件的数据存储到 .json 类型文件中(.json 原本是为了 JavaScript 开发的,但后来被更多的语言所使用),这样不会变更文件的数据类型。

代码语言:javascript
复制
# 存储数据
import json

numbers = [1, 2, 3, 4, 5]
with open('num.json', 'w') as n_obj:
    json.dump(numbers, n_obj)

至此,你已经学会了 Python 的基础语法,有了这些基础知识,你就应该不会为了看不懂代码而发愁了。

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

本文分享自 SuperFeng 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 输入和 while 循环
  • 函数
  • 继承
  • 文件
  • 存储数据
相关产品与服务
数据保险箱
数据保险箱(Cloud Data Coffer Service,CDCS)为您提供更高安全系数的企业核心数据存储服务。您可以通过自定义过期天数的方法删除数据,避免误删带来的损害,还可以将数据跨地域存储,防止一些不可抗因素导致的数据丢失。数据保险箱支持通过控制台、API 等多样化方式快速简单接入,实现海量数据的存储管理。您可以使用数据保险箱对文件数据进行上传、下载,最终实现数据的安全存储和提取。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档