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

Python 基础: Python入门必看之语法基础

作者头像
野原测试开发
发布2019-07-18 17:02:25
7020
发布2019-07-18 17:02:25
举报
文章被收录于专栏:技术探究技术探究

前言

这是 “Python 基础”系列的第 01 篇文章 ,共 20 篇 。 01 Python 基础:Python入门必看之语法基础 02 Python 基础:列表及字典内置函数&方法内容梳理 03 Python 基础:Python函数及递归函数知识点梳理 04 Python 基础:讲解迭代、过滤、匿名函数、排序算法四大知识点 05 Python 基础:高阶函数学习实践 06 Python 基础:难点装饰器的学习介绍及实现赌博收益小案例 07 Python 基础:重点知识点函数的参数难点解答 08 Python 基础:面试问你类与实例及其属性还不会吗 09 Python 基础:手把手带你梳理对象、继承与多态知识点 10 Python 基础:如何定制类,这里有答案 11 Python 基础:知识巩固,实现一个简易学生管理系统 12 Python 基础:如何优化代码质量,错误、调试和测试你必须要懂 13 Python 基础:模块的概念及使用方法并着重介绍两个常用模块 14 Python 基础:重点知识点--IO编程 15 Python 基础:程序猿必懂知识之正则表达式 16 Python 基础:重点知识点--Pygame的基础知识梳理 17 Python 基础:重点知识点--Pygame实现儿时经典游戏坦克大战 18 Python 基础:重点知识点--进程和线程概念、应用知识梳理 19 Python 基础:重点知识点--网络通信基础知识讲解 20 Python 基础:重点知识点--网络通信进阶知识讲解

目录

1 Python 基础:Python入门必看之语法基础,共有 5 部分:

  • python 中的*args和**kw
  • Python 语法基础
  • Python 的运算符与表达式
  • Python 控制流
  • 字符串格式化与字符串format

1. python 中的*args和**kw

1.1 *args的使用方法

*args 用来将参数打包成tuple给函数体调用。

示例一:

def function(*args):
  print(args, type(args))

function(1)

输出结果以元组的形式展示:

(1,) <class 'tuple'>

示例二:

def function(x, y, *args):
    print(x, y, args)

function(1, 2, 3, 4, 5)

输出结果:

1 2 (3, 4, 5)

1.2 **kwargs的使用方法

**kwargs 打包关键字参数成dict给函数体调用

示例一:

def function(**kwargs):
    print( kwargs, type(kwargs))

function(a=2)

输出结果以元组的形式展示:

{'a': 2} <class 'dict'>

示例二:

def function(**kwargs):
    print(kwargs)

function(a=1, b=2, c=3)

输出结果以元组的形式展示:

{'a': 1, 'b': 2, 'c': 3}

注意点:参数arg、*args、**kwargs三个参数的位置必须是一定的。必须是(arg,*args,**kwargs)这个顺序,否则程序会报错。

def function(arg,*args,**kwargs):
    print(arg,args,kwargs)

function(6,7,8,9,a=1, b=2, c=3)

输出结果为:

6 (7, 8, 9) {'a': 1, 'b': 2, 'c': 3}

2. python 基础语法

2.1 python的常量与变量

在python这里,声明也可以省去: 在python中,变量的定义不需要指定类型,我们可以直接给一个变量x赋值,并通过id(x)来查看x这个变量的内存地址,通过type(x)来查看变量类型。

2.1.1 常量的概念

Python中在程序运行时不会被更改的量称之为常量,比如数字7和字符串"abc"在运行时一直都是数字7跟字符串"abc",不会更改成其他的量,这些就是常量,除此之外,还可以定义任意的字符串为指定值的常量。常量有一个特点,就是:一旦绑定,不能更改。

Python常量与变量 — 常量的应用

在Python中是不能够像C等其他编程语言一样通过const来定义常量的,在Python中定义常量需要用对象的方法来创建,是通过元组来实现常量的功能的,此处先省略。

2.1.2 什么是变量

Python中在程序运行时可以随着程序的运行更改的量称之为变量,比如我们可以定义一个变量i,并将数字5赋给变量i,然后再将数字7再赋给变量i,那么这个时候i的值就变成了7,i的值是可以改变的。那么像i这种可以改变值的量称之为变量。变量有一个特点,就是:即使赋值,也可以更改。

2.2 python的数与字符串

2.2.1 Python数与字符串 — 了解数的类型

Python中数的类型主要有5种,分为有符号整数型(int),长整型(long),浮点型 (float),布尔型(bool),复数型(complex)。

  • 例如:0、1、-1、1009、-290这些等等都是int型。
  • 例如:87887l、-90990l、234567l这些等等都是long型。
  • 例如:2.7788、3.277、8.88这些等等都是float型。
  • bool型只有两个:一个是True、一个是False。
  • 例如:4+2j、-9+20j、56+7j这种类型属于复数类型。

2.2.2 Python数与字符串 — 什么是字符串

在Python中用引号引起来的字符集称之为字符串,比如:'hello'、"my Python"、"2+3"等都是字符串。

Python中字符串中使用的引号可以是单引号、双引号、三引号。但是他们的使用是不同的。

1.例如一句话中,既存在单引号又存在双引号的时候,用三引号括起来可以避免歧义,同时多行语句打印的时候,还可以达到换行的目的。

2.3 索引与切片

2.4 Python数据类型

列表

在Python中没有数组的概念,Python中跟数组最接近的概念就是列表和元组,我们先说列表。列表就是用来存储一连串元素的容器。列表用[]来表示,比如说,一个班里面有30个学生,我们需要将30个学生安排到一间教室里面上课,如果把30个学生分别比作元素,那么这个教室就是数组。30个学生是按座位坐好,有序排列的,在数组中的元素也是有序排列的。。

元组

Python中跟数组类似的除了列表之外还有元组。元组里面的元素也是进行索引计算。但是列表跟元组有什么区别呢?一是列表里面的元素的值可以修改,而元组里面的元素的值不能修改,只能读取。区别二是列表的符号是[ ],而元组的符号是()。

集合

Python中集合主要有两个功能,一个功能是进行集合操作,另一个功能是消除重复元素。集合的格式是:set(元素)。

字典

Python中的字典也叫做关联数组,用大括号{ }括起来。

格式是这样的:zidian={'name':'weiwei','home':'guilin','like':'music'}

我们可以这样理解:字典里面其实包含的是一整个事情,这个事情里面分别包括各种方面的具体信息。

比如我们刚才这个,包含了name方面、home方面、like方面的具体信息,其中name方面的值为weiwei,home方面的值为guilin,以及like方面的值为music。

2.5 认识Python标识符

2.6 Python对象

Python的内置的对象类型主要有数字、字符串、列表、元组、字典、集合等等。其实,在Python中,一切皆为对象,我们后面会给大家讲解面向对象的知识。

2.7 Python行与缩进

行中分号使用规则

在Python中一个物理行一般可以包含多个逻辑行,在一个物理行中编写多个逻辑行的时候,逻辑行与逻辑行之间用分号隔开。每个逻辑行的后面必须是有一个分号的,但是我们在编写程序的时候,如果一个逻辑行占了一个物理行的最后,这个逻辑行可以省略分号。

行连接

我们已经知道,多个逻辑行可以写在一个物理行中,那么我们可不可以将一个逻辑行分别写在多个物理行中呢?可以的,但是我们必须使用行连接。行连接的方法是在行的最后加上一个\符号

2.8 注释

Python中的注释一般用#进行注释,从#开始,一直到一行(物理行)结束的部分,都是注释。

# '''
# xxx=2
# print xxx
# '''
print('上面是注释')
# 快速注释的快捷键

输出结果为:

上面是注释

3. python 的运算符与表达式

运算符有哪些

在Python中我们常见的运算符有:+、-、*、/、**、<、>、!=、//、%、&、|、^、~、>>、<<、<=、>=、==、not、and、or。

input()里面不管你输入的是什么,它最终得到的都是字符串

4. python 控制流

python没有switch

Python的三种控制流 — 什么是控制流?

Python中程序代码的执行是有顺序的,有的程序代码会从上到下按顺序执行,有的 程序代码会跳转着执行,有的程序代码会选择不同的分支去执行,有的程序代码会 循环地执行。那么到底什么样的程序应该自上而下执行,什么样的程序应该选择分 支执行,什么样的程序应该循环着执行呢?在Python中是有相应的控制语句进行标 识的,控制语句他能控制某些代码段的执行方式,我们把这些不同功能的控制语句 称为控制流。

在Python中通常的情况下程序的执行是从上往下执行的,而某些时候我们为了改变 程序的执行顺序,故而使用控制流语句控制程序怎么执行,而在Python中,有三种 控制流类型,一种是顺序结构,就是指按顺序执行的结构,第二种是分支结构,第 三种是循环结构。

语法

if 表达式 : 缩进代码(为真的时候显示) 缩进代码(为真的时候显示) else: 缩进代码(为假的时候显示)

continue语句指的是结束执行本次循环中剩余的语句,然后继续下一轮的循环。break语句指的是直接结束这个循环,包括结束执行该循环地剩余的所有次循环。

5. 字符串格式化与字符串format

实例代码如下:

#1.打印字符串,无论是数字还是字符串都可以使用 %s
print("My name is %s" %("Alfred.Xue"))

#2.打印整数
print("I am %d years old." %(25))

#3.打印浮点数
print ("His height is %f m"%(1.70))

#4.打印浮点数(指定保留两位小数)
print ("His height is %.2f m"%(1.70))

#5.指定占位符宽度(右对齐,字体右对齐,空格在左)
print ("Name:%10s Age:%8d Height:%8.2f"%("Alfred",25,1.70))

#6.指定占位符宽度(左对齐,字体左对齐,空格在右)
print ("Name:%-10s Age:%-8d Height:%-8.2f"%("Alfred",25,1.70))

#7.指定占位符(只能用0当占位符)
print ("Name:%-10s Age:%08d Height:%08.2f"%("Alfred",25,1.70))

#8.科学计数法
format(0.0026,'.2e')

输出结果如下:

My name is Alfred.Xue

I am 25 years old.

His height is 1.700000 m

His height is 1.70 m

Name: Alfred Age: 25 Height: 1.70

Name:Alfred Age:25 Height:1.70 

Name:Alfred Age:00000025 Height:00001.7

'2.60e-03'

format是一种全局的方法,它也是用来格式化的

print('{0},{1}'.format('zhangk', 32))
 
print('{},{},{}'.format('zhangk','boy',32))
 
print('{name},{sex},{age}'.format(age=32,sex='male',name='zhangk'))
 
# 格式限定符
# 它有着丰富的“格式限定符”(语法是{}中带:号),比如:
 
# 填充与对齐
# 填充常跟对齐一起使用
# ^、<、>分别是居中、左对齐、右对齐,后面带宽度
# :号后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充
 
print('{:^8}'.format('zhang'))
print('{:0>8}'.format('zhang'))
print('{:a<8}'.format('zhang'))
print('{:p^10}'.format('zhang'))
 
# 精度与类型f
# 精度常跟类型f一起使用
print('{:.2f}'.format(31.31412))
 
# 其他类型
# 主要就是进制了,b、d、o、x分别是二进制、十进制、八进制、十六进制
print('{:b}'.format(15))
 
print('{:d}'.format(15))
 
print('{:o}'.format(15))
 
print('{:x}'.format(15))
 
# 用逗号还能用来做金额的千位分隔符
print('{:,}'.format(123456789))

输出结果如下:

zhangk,32
zhangk,boy,32
zhangk,male,32
 zhang
000zhang
zhangaaa
ppzhangppp
31.31
1111
15
17
f
123,456,789

这两种方法输出结果是一样的,不过第一种,顺序不用管,第二种顺序必须对应。

- - - E N D - - -

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

本文分享自 离不开的网 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 目录
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档