有些人不属于自己,但是遇见了也弥足珍贵。 -- 青山刚昌 《名侦探柯南》
安装python解释器
下载官网:
安装pycharm编辑器
下载官网:
Download PyCharm: The Python IDE for data science and web development by JetBrains
Python入门知识
标识符
第一个字符必须是字母表中字母或下划线 _ 。
标识符的其他的部分由字母、数字和下划线组成。
标识符对大小写敏感。
保留字
保留字即关键字,我们不能把它们用作任何标识符名称。
Python 的标准库提供了一个 keyword 模块,可以输出当前版本的所有关键字。
注释
Python中单行注释以 # 开头。
多行注释可以用多个 # 号,或者直接用 ''' 和 """ (可以跨行)。
python
# 第一个注释
# 第二个注释
'''
第三注释
第四注释
'''
"""
第五注释
第六注释
"""
print ("Hello, Python!")
#最后输出Hello, Python!
行与缩进
python最具特色的就是使用缩进来表示代码块,不需要使用大括号 {} 。
缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。
python
if True:
print ("True")
else:
print ("False")
#同一个代码块,缩进必须相同
多行语句
Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠来实现多行语。
在 [], {}, 或 () 中的多行语句,不需要使用反斜杠。
python
total = item_one + \
item_two + \
item_three
total = ['item_one', 'item_two', 'item_three',
'item_four', 'item_five']
代码组
缩进相同的一组语句构成一个代码块,我们称之代码组。
像if、while、def和class这样的复合语句,首行以关键字开始,以冒号( : )结束,该行之后的一行或多行代码构成代码组。
我们将首行及后面的代码组称为一个子句(clause)。
python
if expression :
suite
elif expression :
suite
else :
suite
print 输出
print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end="":。
python
x="a"
y="b"
# 换行输出
print( x )
print( y )
# 不换行输出
print( x, end=" " )
print( y, end=" " )
'''
a
b
a b
'''
导入函数模块
在 python 用 import 或者 from...import 来导入相应的模块。
将整个模块(somemodule)导入,格式为: import somemodule
从某个模块中导入某个函数,格式为: from somemodule import somefunction
从某个模块中导入多个函数,格式为: from somemodule import firstfunc, secondfunc, thirdfunc
Python基本数据类型
变量概念
Python 中的变量不需要声明。
每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。
在 Python 中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。
一个变量可以通过赋值指向不同类型的对象。
python
counter = 100 # 整型变量
miles = 1000.0 # 浮点型变量
name = "nowcoder" # 字符串
print (counter)
print (miles)
print (name)
标准数据类型分类
Python3 中有六个标准的数据类型:
- Number(数字)
- String(字符串)
- List(列表)
- Tuple(元组)
- Set(集合)
- Dictionary(字典)
Python3 的六个标准数据类型中:
- 不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
- 可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。
Number(数字)
- 包含int、float、bool、complex四种细分类型。 2. 内置的 type() 函数可以用来查询变量所指的对象类型。
python
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'>
String(字符串)
python中单引号和双引号使用完全相同。
使用三引号('''或""")可以指定一个多行字符串。
字符串可以用 + 运算符连接在一起,用 * 运算符重复。
Python 中的字符串有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始。
Python中的字符串不能改变,向一个索引位置赋值,比如word[0] = 'm'会导致错误。
Python 没有单独的字符类型,一个字符就是长度为 1 的字符串。
python
word = '字符串'
sentence = "这是一个句子。"
paragraph = """这是一个段落,
可以由多行组成"""
python
str='Nowcoder'
print(str) # 输出字符串
print(str[0:-1]) # 输出第一个到倒数第二个的所有字符
print(str[0]) # 输出字符串第一个字符
print(str[2:5]) # 输出从第三个开始到第五个的字符
print(str[2:]) # 输出从第三个开始的后的所有字符
print(str * 2) # 输出字符串两次
print(str + '你好') # 连接字符串
List(列表)
列表可以完成大多数集合类的数据结构实现。
列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。
列表是写在方括号 [] 之间、用逗号分隔开的元素列表。
和字符串一样,列表同样可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。
加号 + 是列表连接运算符,星号 *是重复操作。
python
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']
'''
Dictionary(字典)
列表是有序的对象集合,字典是无序的对象集合。
两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
字典是一种映射类型,字典用 { } 标识,它是一个无序的**键(key) : 值(value)**的集合。
python
dict = {}
dict['one'] = "1 - 牛客教程"
dict[2] = "2 - 牛客工具"
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'])
'''