Python基础语法看这一篇就够了

Python语法

标识符

在 Python 里,标识符由字母、数字、下划线组成。

在 Python 中,所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。

Python 中的标识符是区分大小写的。

以下划线开头的标识符是有特殊意义的。以单下划线开头 _foo 的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import * 而导入。
以双下划线开头的 _foo 代表类的私有成员,以双下划线开头和结尾的 _foo 代表 Python 里特殊方法专用的标识,如 _init_() 代表类的构造函数。

行和缩进

学习 Python 与其他语言最大的区别就是,Python 的代码块不使用大括号 {} 来控制类,函数以及其他逻辑判断。python 最具特色的就是用缩进来写模块。

缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。缩进不标准代码会报错。

数据类型转换

常见的类型转换函数

函数 描述
int(x [,base]) 将x转换为一个整数
long(x [,base] ) 将x转换为一个长整数
float(x) 将x转换到一个浮点数
complex(real [,imag]) 创建一个复数
str(x) 将对象 x 转换为字符串
repr(x) 将对象 x 转换为表达式字符串
eval(str) 用来计算在字符串中的有效Python表达式,并返回一个对象
tuple(s) 将序列 s 转换为一个元组
list(s) 将序列 s 转换为一个列表
set(s) 转换为可变集合
dict(d) 创建一个字典。d 必须是一个序列 (key,value)元组。
frozenset(s) 转换为不可变集合
chr(x) 将一个整数转换为一个字符
unichr(x) 将一个整数转换为Unicode字符
ord(x) 将一个字符转换为它的整数值
hex(x) 将一个整数转换为一个十六进制字符串
oct(x) 将一个整数转换为一个八进制字符串
# 将数字类型转换成字符串
num_str = str(11)
 
float_str = str(11.345)
 
# 将字符串转换成数字
num = int("11")
num2 = float("11.345")
 
# 错误示例,想要将字符串转换成数字,必须要求字符串内的内容都是数字
# num3 = int("程序员")
 
# 整数转浮点数
float_num = float(11)
 
# 浮点数转整数
int_num = int(11.345)

多行语句

Python语句中一般以新行作为语句的结束符。

但是我们可以使用斜杠( \)将一行的语句分为多行显示,如下:


total = item_one + \
        item_two + \
        item_three

语句中包含 [], {} 或 () 括号就不需要使用多行连接符。如下:

days = ['Monday', 'Tuesday', 'Wednesday',
        'Thursday', 'Friday']

Python 可以同一行显示多条语句,方法是用分号 ; 分开

字符串

字符串拼接

  1. 字面量通过+字节拼接
  2. 通过占位符拼接
# 字符串字面量之间的拼接
print("123" + "456")
# 字符串字面量和字符串变量的拼接
name = "李大红"
address = "建材城东路9号院"
tel = 400400400
print("我是:" + name + ",我的地址是:" + address + ",我的电话是:" + tel)
 
# 占位符拼接
print("我是一只小小%s" % "小小鸟")
 
# 通过占位的形式,完成数字和字符串的拼接
class_num = 57
avg_salary = 16781
message = "Python大数据学科,北京%s期,毕业平均工资:%s" % (class_num, avg_salary)
print(message)
 
name = "柏楚电子"
setup_year = 2006
stock_price = 19.99
message = "%s,成立于:%d,我今天的股价是:%f" % (name, setup_year, stock_price)
print(message)
 
 
num1 = 11
num2 = 11.345
print("数字11宽度限制5,结果是:%5d" % num1)
print("数字11宽度限制1,结果是:%1d" % num1)
print("数字11.345宽度限制7,小数精度2,结果是:%7.2f" % num2)
print("数字11.345不限制,小数精度2,结果是:%.2f" % num2)

字符串截取

Python字符串(数组也一样)有两套下标,

  • 从左到右下标默认0开始的,最大范围是字符串长度少1
  • 从右到左下标默认-1开始的,最大范围是字符串开头
    在这里插入图片描述

可以用 str[头下标:尾下标]截取字符串,含头不含尾

str = 'Hello World!'
 
print(str)       # 输出完整字符串
print(str[0])    # 输出字符串中的第一个字符
print(str[2:5])  # 输出字符串中第三个至第六个之间的字符串
print(str[2:])   # 输出从第三个字符开始的字符串
print(str * 2)   # 输出字符串两次
print(str + "Hi")  # 输出连接的字符串
#-----------运行结果-------------
Hello World!
H
llo
llo World!
Hello World!Hello World!
Hello World!Hi

Python列表和字典

Python列表List基本使用

#!/usr/bin/python
# -*- coding: UTF-8 -*-
  
list = [ 'runoob', 786 , 2.23, 'john', 70.2 ]   # 列表的定义
tinylist = [123, 'john']                        # 列表的定义
  
print list               # 输出完整列表
print list[0]            # 输出列表的第一个元素
print list[1:3]          # 输出第二个至第三个元素
print list[2:]           # 输出从第三个开始至列表末尾的所有元素
print tinylist * 2       # 输出列表两次
print list + tinylist    # 打印组合的列表

列表的下标和截取和字符串一致,但是Python 列表截取可以接收第三个参数,参数作用是截取的步长,以下实例在索引 1 到索引 4 的位置并设置为步长为 2(间隔一个位置)来截取字符串:
列表截取

Python元组

元组就是只读的列表,使用方式和List列表基本一致,只是不能修改。元组的声明用小括号(),List用中括号。

Python 字典

Python的字典(dictionary)相当于Map,存储键值对,字典是无序的对象集合。

字典当中的元素是通过键来存取的,而不是通过偏移存取。

字典用"{ }"标识。字典由索引(key)和它对应的值value组成。以下是示例:

dict = {
    
    }
dict['one'] = "This is one"
dict[2] = "This is two"
  
tinydict = {
    
    'name': 'runoob','code':6734, 'dept': 'sales'}
  
  
print dict['one']          # 输出键为'one' 的值
print dict[2]              # 输出键为 2 的值
print tinydict             # 输出完整的字典
print tinydict.keys()      # 输出所有键
print tinydict.values()    # 输出所有值
 
#------------------输出结果------------------
This is one
This is two
{
    
    'dept': 'sales', 'code': 6734, 'name': 'runoob'}
['dept', 'code', 'name']
['sales', 6734, 'runoob']