专栏首页技术探究-前端、Python、爬虫、数据分析、工具Python 基础: Python入门必看之语法基础

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

前言

这是 “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 - - -

本文分享自微信公众号 - 离不开的网(Gy_dxj)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-07-16

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 3 Python 基础: Python函数及递归函数知识点梳理

    函数的英文是function,所以,通俗地来讲,函数就是功能的意思。函数是用来封装特定功能的,比如,在Python里面,len()是一个函数,len()这个函数...

    小Gy
  • 爬虫系列(8)数据提取--扩展三种方法。

    w3c http://www.w3school.com.cn/xpath/index.asp

    小Gy
  • 10 Python 基础: 如何定制类,这里有答案

    看到类似__slots__这种形如__xxx__的变量或者函数名就要注意,这些在Python中是有特殊用途的。

    小Gy
  • 编程语言Python的安装与使用

    我发现学习IT到一定程度避免不了要和编程语言打交道,大学时学习C语言因为老师能力有限,讲得我对此兴趣全无,得过且过的混了过去。不过现在真的感觉有点后悔。只是后悔...

    py3study
  • 学了 Python 能用来做什么?

    说起编程语言,Python 也许不是使用最广的,但一定是现在被谈论最多的。随着近年大数据、人工智能的兴起,Python 越来越多的出现在人们的视野中。

    Crossin先生
  • 前50个Python面试问题(最受欢迎)

    #1)Python可以用于Web客户端和Web服务器端编程吗?哪一个最适合Python?

    用户7466307
  • Python知识图谱

    武侠,是成人的童话。江湖,是门派的斗争。要想在江湖中闯出名号, 称手的兵器很有必要。数据科学已经开山立派,Python 便在其中独领风骚。

    博文视点Broadview
  • 创始人退休后的Python,起飞还是没落?

    今日Python 之父 Guido Van Rossum宣布退休的消息占据了多家科技媒体的版面。

    博文视点Broadview
  • 书单丨Python加油站,多场景为你助力!

    本书是写给孩子看的Python编程书,在故事中学编程,不知不觉掌握Python,让孩子领先一步。

    博文视点Broadview
  • Python 官方报告:3.7 版本最受欢迎

    每年 Python 官方都会发布一次年度报告,如果你想了解 Python 的现状、趋势与未来,可以说没有比这份报告更有用的信息了。

    HyperAI超神经

扫码关注云+社区

领取腾讯云代金券