python3中的常见知识点1

简记一些python小知识

  • 字符串输出
  • docstring(文档字符串)
  • Lambda 函数(匿名函数)
  • python函数之参数调用
  • 参考链接

字符串输出

1、r’原始字符串’,当需要输出字符串中的 \ ,而不是将其视为特殊字符时,r’原始字符串’很有必要。

print('D:\python3\newExample')   # \n是换行符

print(r'D:\python3\newExample')

2、多行字符串输出,在三引号”’ …. ”’或”“” … “”” 的第一个引号后面加 \ ,防止输出第一行为空的情况(行结尾自动包含在字符串中)。

# 没有\,输出第一行为空行
print("""\
没有比脚更长的路
没有比人更高的山
《山高路远》 汪国真
""")

3、带引号的相邻字符串会自动连起来,切分长字符串时非常有必要。

text = ('孤独若不是由于内向,便往往是由于卓绝。'
'太美丽的人感情容易孤独,太优秀的人心灵容易孤独。'
'其中的道理显而易见,因为他们都难以找到合适的伙伴。'
'太阳是孤独的,月亮是孤独的,星星却难以数计。')
print(text)

docstring(文档字符串)

PEP-0257中有详细的介绍

简单理解,python中的文档字符串(docstring)即为每一个包,模块,类,函数和方法中的第一个语句,有单行文档和多行文档两种,此处使用三引号。

文档字符串内容和格式的惯例
第一行永远应该是对象用途的简短、精确的总述。这一行应该以大写字母开头,并以句号结尾。

如果在文档字符串中有更多的行,第二行应该是空白,在视觉上把摘要与剩余的描述分离开来。

def fun(a, b):
""" This function is sum(a, b). """

各类docstring风格


Lambda 函数(匿名函数)

Lambda 函数又称匿名函数,即不需要定义函数名字。
lambda只是一个表达式。
lambda函数的语法只包含一个语句

lambda [arg1 [,arg2,.....argn]]:expression

例子:

sum = lambda a, b: a + b
print(sum(1, 2))

python函数之参数调用

函数调用时的参数类型如下
1、必备参数
必备参数须以正确的顺序传入函数。调用时的数量必须和声明时的一样。

2、关键字参数
函数调用使用关键字参数来确定传入的参数值,使用关键字参数允许函数调用时参数的顺序与声明时不一致。

3、默认参数
调用函数时,缺省参数的值如果没有传入,则被认为是默认值。

def sum(a, b = 3):
"""
:param a: int
:param b: int
:return: sum(a, b)
"""
return a + b
print(sum(3)) # 6

4、不定长参数
函数可以被可变个数的参数调用,有*args 、**kwargs两种标识符。
(1)*args标识符
以列表和元组的形式传递参数,不能用字典。

def test_args(a, *args):
print("必备参数: ", a)
# 输出不定长参数
for value in args:
print("多余的参数:", value)
test_args(3, 2, 'test *args')



(2)**kwargs标识符
以字典的值作为关键字参数,*args 必须出现在 **kwargs 之前。

def test_args2(a, **kwargs):
print("必备参数: ", a)
# 输出不定长参数
for key in kwargs:
print(key + ":" + kwargs[key])
test_args2(a = 3, b = '2', string = 'test *args')


参考链接

https://yiyibooks.cn/xx/python_352/index.html
http://www.runoob.com/python/python-tutorial.html
https://www.cnblogs.com/KingCong/p/6412972.html

python3中的常见知识点1的更多相关文章

  1. Python3中的新特性(2)——常见陷阱

    1.文本与字节 Python3对文本字符串(字符)和二进制数据(字节)进行了严格区分,'hello'表示一个以Unicode编码保存的文本字符串,而b'hello'表示一个字节字符串. 在Python ...

  2. Java 基础常见知识点&面试题总结(中),2022 最新版!| JavaGuide

    你好,我是 Guide.秋招即将到来,我对 JavaGuide 的内容进行了重构完善,公众号同步一下最新更新,希望能够帮助你. 上篇:Java 基础常见知识点&面试题总结(上),2022 最新 ...

  3. 常见的爬虫分析库(1)-Python3中Urllib库基本使用

    原文来自:https://www.cnblogs.com/0bug/p/8893677.html 什么是Urllib? Python内置的HTTP请求库 urllib.request          ...

  4. iOS 常见知识点(三):Lock

    iOS 常见知识点(一):Runtime iOS 常见知识点(二):RunLoop 锁是最常用的同步工具.一段代码段在同一个时间只能允许被有限个线程访问,比如一个线程 A 进入需要保护代码之前添加简单 ...

  5. HTML中重要的知识点,表单

    今天跟大家分享一下有关HTML中比较重要的一个知识点-表单: <form></form>表单 这是一个双标签,form表单有两个必须要有的属性,①action就是指表单传递到的 ...

  6. Python3中性能测试工具Locust安装使用

    Locust安装使用: 安装: python3中           ---> pip3 install locust 验证是否安装成功---> 终端中输入 locust --help  ...

  7. python3中的编码

    python2字符串编码存在的问题: 使用 ASCII 码作为默认编码方式,对中文处理不友好 把字符串分为 unicode 和 str 两种类型,将unicode作为唯一内码,误导开发者 python ...

  8. Python3中的编码问题

    编码方式介绍 我们首先来熟悉一下常见的一些编码方式,按照时间轴来划分,共有以下几种编码方式(常见): ASCII编码方式:对127个常见字符进行编码,其中包含了10个阿拉伯数字,共52个大小写英文字母 ...

  9. mysql常见知识点总结

    mysql常见知识点总结 参考: http://www.cnblogs.com/hongfei/archive/2012/10/20/2732516.html https://www.cnblogs. ...

  10. Python3中的输入输出

    input()函数 我们可以通过Python3解释器查看Python3中input()的含义: >>> type(input) <class 'builtin_function ...

随机推荐

  1. kubernetes kubectl 命令自动补全

    yum install -y bash-completion source /usr/share/bash-completion/bash_completion source <(kubectl ...

  2. Fluentd部署:系统配置

    Fluentd的全局配置项,诸如开启RPC.使用多worker模式等.可在配置文件中通过<system>进行配置,或通过命令行进行配置. 参数 workers:指定worker进程数,默认 ...

  3. Python离线安装Flask

    受限于内网,无法使用pip install Flask直接安装. 以Flask-0.12.2为例 安装Flask需要以下的依赖性,在安装Flask离线版时可以看到依赖性要求. 离线安装文件地址: ht ...

  4. 修改NodePort的范围

    在 Kubernetes 集群中,NodePort 默认范围是 30000-32767,某些情况下,因为您所在公司的网络策略限制,您可能需要修改 NodePort 的端口范围 修改kube-apise ...

  5. docker相关总结

    Docker 的相关使用记录 一.安装docker linux环境使用yum命令安装docker 第一步:确保自己的虚拟机没有安装过docker,如果安装过的需要将原先的docker进行卸载,命令如下 ...

  6. SQL Server如何精准匹配字符中的字符,绝对匹配。

    举例: 我现在是需要查询这字段里包含1的数据 我如果直接charindex,那么11,12也会被包含. 解决(1): SELECT * FROM ( SELECT '1,2,12,111' AS st ...

  7. Python中dataclass库

    目录 dataclass语法 一. 简介 二. 装饰器参数 三. 数据属性 1. 参数 2. 使用示例 3. 注意事项 四. 其他 1. 常用函数 2. 继承 3. 总结 dataclass语法 一. ...

  8. k8s 中 Pod 的控制器

    k8s 中 Pod 的控制器 前言 Replication Controller ReplicaSet Deployment 更新 Deployment 回滚 deployment StatefulS ...

  9. ETL工具Datax、sqoop、kettle 的区别

    一.Sqoop主要特点: 1.可以将关系型数据库中的数据导入到hdfs,hive,hbase等hadoop组件中,也可以将hadoop组件中的数据导入到关系型数据库中: 2.sqoop在导入导出数据时 ...

  10. KTV和泛型(2)

    很多使用泛型的小伙伴,都会有一个疑惑:为什么有的方法返回值前带<T>.<K, V>之类的标记,而有的方法返回值前又什么都不带呢?就像这样: // 实体基类 class Enti ...