Python基本语法总结(一)

Python简介

  • Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节,类似于PHP和Perl语言。
  • Python 是交互式语言: 可以在一个 Python 提示符 >>> 后直接执行代码。
  • Python 是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。
  • Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言

格式控制

行和缩进

Python 的代码块不使用大括号 {} 来控制类,函数以及其他逻辑判断。在Python中利用缩进来写模块,所有代码块语句必须包含相同的缩进空白数量。


if flag:
    print("The Flag is")
    print("True")
else:
    print("The Flag is")
    print("False")

若出现 IndentationError: unindent does not match any outer indentation level 错误,则说明使用缩进方式不一样
若出现 IndentationError: unexpected indent 错误,则说明缩进没有对齐。因此建议使用统一缩进方式,例如tab或空格。

一行语句多行显示

可以使用斜杠( \)将一行的语句分为多行显示,例如:


total = item_one + \
        item_two + \
        item_three

同行显示多条语句

Python可以在同一行中使用多条语句,语句之间使用分号(;)分割


# 利用 ; 就可以实现在一行内显示多条语句
x=10;y=10;print(x+y)

注释

  1. 单行注释 #

# 这是一条注释
print("hello")  # 可以放在代码后面

  1. 多行注释 ''' 和 """

"""
多行注释放在三对双引号中间
"""

'''
也可以放在三对单引号中间
'''

Python中的变量类型

不同于C++中的变量的声明,例如int x,在Python中变量赋值不需要类型声明。每个变量在使用前都必须赋值,利用赋值运算符=来进行变量赋值,变量赋值以后该变量才会被创建。基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。


first  = "Hello"    #字符串
second = "World"    #字符串
third = 100.0   #浮点型
fouth = 233333  #整形变量

print(first, second, third, fouth)

执行结果:

Hello World 100.0 2333333

在Python中允许同时为多个变量赋值:


first, second , third , fouth = "Hello" , "World", 100.0 , 23333

标准数据类型

Python有五个标准的数据类型:

  1. Numbers(数字)
  2. String(字符串)
  3. List(列表)
  4. Tuple(元组)
  5. Dictionary(字典)

数字Number

数字数据类型用于存储数值,是不可以改变的数据类型。这意味着改变数字数据类型会分配一个新的对象。


a = 10  #创建一个对象
a = 20  #又创建了一个新对象

可以利用del删除单个或多个对象的引用:


del var #删除单个引用
del var_a, var_b    #删除多个引用

在Python支持四种不同的数字类型:

  • int(有符号整型)
  • long(长整型[也可以代表八进制和十六进制])
  • float(浮点型)
  • complex(复数)

字符串String

字符串或串(String)是由数字、字母、下划线组成的一串字符。
python的字串列表有2种取值顺序:

  • 从左到右索引默认0开始的,最大范围是字符串长度少1
  • 从右到左索引默认-1开始的,最大范围是字符串开头
string      :    A  B  C  D  E
index-front :    0  1  2  3  4
index-back  :   -5 -4 -3 -2  -1

  1. 可以对Python的字符串进行截取:

    str="abcdef"
    print(str[1:3])
    
    

    输出结果:

    bc
    
    

  2. 也可以对Python的字符串进行连接操作重复操作

    
    str1="abcdef"
    str2="hijklm"
    str3=str1+str2  #利用 + 运算符实现字符串连接
    str4=str1*4     #利用 * 运算符实现字符串重复
    print(str3)
    print(str4)
    
    

    运行结果:

    abcdefhijklm
    abcdefabcdefabcdefabcdef
    

列表List

列表用 [ ] 标识,是 python 最通用的复合数据类型。列表中值的切割也可以用到变量 [头坐标:尾坐标] ,就可以截取相应的列表,从左到右索引默认 0 开始,从右到左索引默认 -1 开。列表中的元素支持字符、数字、字符串,也可以嵌套列表。


list = ["a", 123 , 10.0 , "ddd", 456 , "h"]
list2= ["append",999]
print(list[1:3])
print(list[1:])
print(list*2)
print(list+list2)

输出结果:

[123, 10.0]
[123, 10.0, 'ddd', 456, 'h']
['a', 123, 10.0, 'ddd', 456, 'h', 'a', 123, 10.0, 'ddd', 456, 'h']
['a', 123, 10.0, 'ddd', 456, 'h', 'append', 999]

元组Tuple

元组Tuple类似列表List,元组使用()标识,但是元组不能二次赋值,相当于只读列表


tuple = (123,"aaa",'b',5.9)

# tuple[2]=10 非法引用,不允许二次赋值

字典Dictionary

列表是有序的对象集合,字典是无序的对象集合,与C++中的map类似。字典当中的元素是通过来存取的,而不是通过下标索引存取。字典由{}来标识,字典中的元素是键值对


dict = {"name":"John","age":18,"ip":123,"paid":5.5}
print(dict["name"]) #输出键位"name"对应的值
print(dict)
print(dict.keys())  #输出所有键
print(dict.values())    #输出所有值

运行结果:


John
{'name': 'John', 'age': 18, 'ip': 123, 'paid': 5.5}
dict_keys(['name', 'age', 'ip', 'paid'])
dict_values(['John', 18, 123, 5.5])

Python运算符

算数运算符


其中比较特殊的是**幂运算符和//向下取整运算符

比较运算符

同C/C++相同

赋值运算符

基本同C/C++相同

位运算符


a = 0011 1100

b = 0000 1101

-----------------

a&b = 0000 1100 # &按位与

a|b = 0011 1101 # |按位或

a^b = 0011 0001 # ^按位异或

~a  = 1100 0011 # ~按位取反

a<<1    =   0111 1000   #左移

a>>1    =   0001 1110   #右移

逻辑运算符

成员运算符


a = 1
b = 6
list = [1, 2, 3, 4, 5 ]
 
if ( a in list ):
   print(" a 在给定的列表中 list 中 ")
else:
   print(" a 不在给定的列表中 list 中 ")
 
if ( b not in list ):
   print(" b 不在给定的列表中 list 中 ")
else:
   print(" b 在给定的列表中 list 中 ")

运行结果:

 a 在给定的列表中 list 中 
 b 不在给定的列表中 list 中 

身份运算符


is 用于判断两个变量引用对象是否为同一个(同一块内存空间), 而 == 用于判断引用变量的值是否相等。


>>> a = [1, 2, 3]
>>> b = a
>>> b is a 
True
>>> b == a
True
>>> b = a[:]    #虽然b与a内容相同,但是b与a引用的对象并发来自同一内存空间
>>> b is a
False
>>> b == a
True

posted @ 2020-09-03 21:02  海物chinono  阅读(787)  评论(0)    收藏  举报