Python基础知识---入门

有些人不属于自己,但是遇见了也弥足珍贵。      -- 青山刚昌 《名侦探柯南》

安装python解释器

下载官网:

Welcome to Python.org

安装pycharm编辑器

下载官网:
Download PyCharm: The Python IDE for data science and web development by JetBrains

Python入门知识 

标识符

1. 第一个字符必须是字母表中字母或下划线 _ 。

2. 标识符的其他的部分由字母、数字和下划线组成。

3. 标识符对大小写敏感。

保留字 

1. 保留字即关键字,我们不能把它们用作任何标识符名称。

2. Python 的标准库提供了一个 keyword 模块,可以输出当前版本的所有关键字。

注释 

1. Python中单行注释以 # 开头。

2. 多行注释可以用多个 # 号,或者直接用 ''' (可以跨行)和 """(可以跨行)

# 第一个注释
# 第二个注释

'''
第三注释
第四注释
'''

"""
第五注释
第六注释
"""

print ("Hello, Python!")
#最后输出 Hello, Python!

行与缩进

1. python最具特色的就是使用缩进来表示代码块,不需要使用大括号 {} 。

2. 缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。

if True:
    print ("True")
else:
    print ("False")

# 同一个代码块,缩进必须相同

 多行语句

1. Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠来实现多行语。 

2. 在 [ ], { }, 或 ( ) 中的多行语句,不需要使用反斜杠。 

total = item_one + \
        item_two + \
        item_three

total = ['item_one', 'item_two', 'item_three',
        'item_four', 'item_five']

 代码组

1. 缩进相同的一组语句构成一个代码块,我们称之代码组。

2. 像if、while、def和class这样的复合语句,首行以关键字开始,以冒号( : )结束,该行之后的一行或多行代码,构成代码组。

3. 我们将首行及后面的代码组称为一个子句(clause)。

if expression : 
   suite
elif expression : 
   suite 
else : 
   suite

 print 输出 

print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end=" "

x="a"
y="b"

# 换行输出
print( x )
print( y )

# 不换行输出
print( x, end=" " )
print( y, end=" " )

# a
# b
# a b 

 导入函数模块

1. 在 python 用 import 或者 from...import 来导入相应的模块。

2. 将整个模块(somemodule)导入,格式为: import somemodule

3. 从某个模块中导入某个函数,格式为: from somemodule import somefunction

4. 从某个模块中导入多个函数,格式为: from somemodule import firstfunc, secondfunc, thirdfunc

 Python基本数据类型

变量概念

1. Python 中的变量不需要声明。

2. 每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

3. 在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。

4. 一个变量可以通过赋值指向不同类型的对象。

counter = 100          # 整型变量
miles   = 1000.0      # 浮点型变量
name    = "nowcoder"   # 字符串

print (counter) # 100 
print (miles) # 1000.0  
print (name) # nowcoder

标准数据类型分类                                                                                    

Python3 中有六个标准的数据类型:

  • Number(数字)
  • String(字符串)
  • List(列表)
  • Tuple(元组)
  • Set(集合)
  • Dictionary(字典)

Python3 的六个标准数据类型中:

  • 不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
  • 可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。

Number(数字)

1. 包含int、float、bool、complex四种细分类型。                                                                    2. 内置的 type() 函数可以用来查询变量所指的对象类型。

3. int(x) 将x转换为一个整数。

4. float(x) 将x转换到一个浮点数。

5. 此外,还存在数学函数、随机数函数、三角函数等库函数。

a, b, c, d = 20, 5.5, True, 4+3j
print(type(a), type(b), type(c), type(d))

# <class 'int'> <class 'float'> <class 'bool'> <class 'complex'>
a = 1.0
b=int(a)
print(b)

# 1 

String(字符串)

1. python中单引号 ' ' 和双引号 " " 使用完全相同。

2. 使用三引号('''或""")可以指定一个多行字符串。

3. 字符串可以用 + 运算符连接在一起,用 * 运算符重复。

4. Python 中的字符串有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始。

5. Python中的字符串不能改变,向一个索引位置赋值,比如word[0] = 'm'会导致错误。

6. Python 没有单独的字符类型,一个字符就是长度为 1 的字符串。

word = '字符串'
sentence = "这是一个句子。"
paragraph = """这是一个段落,
               可以由多行组成"""
str='Nowcoder'

print(str)                 # 输出字符串
print(str[0:-1])           # 输出第一个到倒数第二个的所有字符
print(str[0])              # 输出字符串第一个字符
print(str[2:5])            # 输出从第三个开始到第五个的字符
print(str[2:])             # 输出从第三个开始的后的所有字符
print(str * 2)             # 输出字符串两次
print(str + '你好')        # 连接字符串

# Nowcoder
# Nowcode
# N
# wco
# wcoder
# NowcoderNowcoder
# Nowcoder你好

List(列表)

1. 列表可以完成大多数集合类的数据结构实现。

2. 列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。

3. 列表是写在方括号 [ ] 之间、用逗号分隔开的元素列表。

4. 和字符串一样,列表同样可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。 

5. 加号 + 是列表连接运算符,星号 *是重复操作。

list = [ 'abcd', 786 , 2.23, 'nowcoder', 70.2 ]
tinylist = [123, 'nowcoder']

print (list)            # 输出完整列表
print (list[0])         # 输出列表第一个元素
print (list[1:3])       # 从第二个开始输出到第三个元素
print (list[2:])        # 输出从第三个元素开始的所有元素
print (tinylist * 2)    # 输出两次列表
print (list + tinylist) # 连接列表

# ['abcd', 786, 2.23, 'nowcoder', 70.2]
# abcd
# [786, 2.23]
# [2.23, 'nowcoder', 70.2]
# [123, 'nowcoder', 123, 'nowcoder']
# ['abcd', 786, 2.23, 'nowcoder', 70.2, 123, 'nowcoder']

1. 可以直接通过赋值来对列表进行修改或更新。

2. 可以使用 del 语句来删除列表的的元素。

list = ['Google', 'Nowcoder', 1997, 2000]
print ("第三个元素为 : ", list[2]) # 1997
list[2] = 2001
print ("更新后的第三个元素为 : ", list[2]) # 2001
list = ['Google', 'Nowcoder', 1997, 2000]

print ("原始列表 : ", list)  # ['Google', 'Nowcoder', 1997, 2000]

del list[2]
print ("删除第三个元素 : ", list)  # ['Google', 'Nowcoder', 2000]

tuple(元组)

1. Python 的元组与列表类似,不同之处在于元组的元素不能修改。 

2. 元组使用小括号,列表使用方括号。

3. 元组与字符串类似,下标索引从0开始,可以进行截取,组合等。

4. 元组中的元素值是不允许修改的,但我们可以对元组进行连接组合。

5. 元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组。

tup1 = ('Google', 'Nowcoder', 1997, 2000)
tup2 = (1, 2, 3, 4, 5, 6, 7 )

print ("tup1[0]: ", tup1[0])
print ("tup2[1:5]: ", tup2[1:5])

# tup1[0]:  Google
# tup2[1:5]:  (2, 3, 4, 5)
up1 = (12, 34.56);
tup2 = ('abc', 'xyz')
# 以下修改元组元素操作是非法的。
tup1[0] = 100
# 创建一个新的元组
tup3 = tup1 + tup2;
print (tup3)
# (12, 34.56, 'abc', 'xyz')
tup = ('Google', 'Nowcoder', 1997, 2000)
print (tup)
del tup
# 'Google', 'Nowcoder', 1997, 2000

Dictionary(字典)

1. 字典的每个键值对用冒号':'分割,每个对之间用逗号','分割,整个字典包括在花括号'{}'中 

2. 值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。

3. 列表与字典之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

4. 字典是一种映射类型,字典用 { } 标识,它是一个无序的键(key) : 值(value)的集合。

5. 向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值。

6. 键必须不可变,所以可以用数字,字符串或元组充当,而用列表就不行。

dict = {key1 : value1, key2 : value2 }
dict1 = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}

tinydict = {'name': 'nowcoder','code':1, 'site': 'www.nowcoder.com'}

print (dict['one'])       # 输出键为 'one' 的值
print (dict[2])           # 输出键为 2 的值
print (tinydict)          # 输出完整的字典
print (tinydict.keys())   # 输出所有键
print (tinydict.values()) # 输出所有值

# 1 - 牛客教程
# 2 - 牛客工具
# {'name': 'nowcoder', 'code': 1, 'site': 'www.nowcoder.com'}
# dict_keys(['name', 'code', 'site'])
# dict_values(['nowcoder', 1, 'www.nowcoder.com'])

dict = {'Name': 'Nowcoder', 'Age': 7, 'Class': 'First'}

dict['Age'] = 8               # 更新 Age
dict['School'] = "牛客教程"    # 添加信息

print ("dict['Age']: ", dict['Age'])
print ("dict['School']: ", dict['School'])

# dict['Age']:  8
# dict['School']:  牛客教程

1. 不允许同一个键出现两次。创建时如果同一个键被赋值两次,后一个值会被记住。

2. 键必须是不可变类型,如数字、字符串或元组,而列表则不行。值可以是任何类型,包括数字、字符串、元组或列表。

dict = {'Name': 'Nowcoder', 'Age': 7, 'Name': '牛客'}
print ("dict['Name']: ", dict['Name'])
# dict['Name']:  牛客

set(集合)

1. 集合是一个无序的不重复元素序列。

2. 可以使用大括号 { } 或者 set() 函数创建集合。

3. 在集合s最后添加元素 s.add( x ) 。

4. 在集合s中移除元素s.remove( x )

5. 计算集合s中元素个数 len(s)。

6. 清空集合 s.clear()。

7. 判断元素是否在集合中存在 x in s。

#创建集合
parame = {value01,value02,...}
set(value)
thisset = set(("Google", "Nowcoder", "Taobao"))
thisset.add( 33 )
print(thisset)
# {'Taobao', 'Nowcoder', 'Google', 33}

 运算符

逻辑运算符

 身份运算符

成员运算符 

致谢 

  感谢您花时间阅读这篇文章!如果您对本文有任何疑问、建议或是想要分享您的看法,请不要犹豫,在评论区留下您的宝贵意见。每一次互动都是我前进的动力,您的支持是我最大的鼓励。期待与您的交流,让我们共同成长,探索技术世界的无限可能!

上一篇:平衡二叉树——AVl树-AVl树的概念


下一篇:【CSS in Depth 2 精译_044】第七章 响应式设计概述