在 Windows 设置环境变量
在环境变量中添加Python目录:
在命令提示框中(cmd) : 输入
1 | path=%path%;C:\Python |
按下”Enter”。
注意: C:\Python 是Python的安装目录。
也可以通过以下方式设置:
- 右键点击”计算机”,然后点击”属性”
- 然后点击”高级系统设置”
- 选择”系统变量”窗口下面的”Path”,双击即可!
- 然后在”Path”行,添加python安装路径即可(我的D:\Python32),所以在后面,添加该路径即 可。
ps:记住,路径直接用分号”;”隔开! - 最后设置成功以后,在cmd命令行,输入命令”python”,就可以有相关显示。
查看Python版本:
1 | python -V |
Python中文编码(对Python2):
Python 文件中如果未指定编码,在执行过程会出现报错:
1 | #!/usr/bin/python |
以上程序执行输出结果为:
1 | File "test.py", line 2 |
Python中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错。
解决方法为只要在文件开头加入 # -*- coding: UTF-8 -*-
或者 # coding=utf-8
就行了
注意:# coding=utf-8
的 = 号两边不要空格。
Python3已无此问题。
在 Windows 下可以不写第一行注释:
1 | #!/usr/bin/python3 |
Python3 基础语法
1)编码:可以在PyCharm中进行选择。
2)标识符
- 第一个字符必须是字母表中字母或下划线 _ 。
- 标识符的其他的部分由字母、数字和下划线组成。
- 标识符对大小写敏感。
- 在 Python 3 中,可以用中文作为变量名,非 ASCII 标识符也是允许的了。
3)Python保留字
Python 的标准库提供了一个 keyword 模块,可以输出当前版本的所有关键字:
1 | import keyword |
4)注释
Python中单行注释以 # 开头
多行注释可以用多个 # 号,还有 ‘’’ 和 “””:,
1 | #!/usr/bin/python3 |
5)缩进
python使用缩进来表示代码块,不需要使用大括号 {} 。
缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。缩进不一致,会导致运行错误。
6)多行语句
Python 可以使用反斜杠()来实现多行语句,在 [], {}, 或 () 中的多行语句,不需要使用反斜杠()
7)字符串
- python中单引号和双引号使用完全相同。
- 使用三引号(‘’’或”””)可以指定一个多行字符串。
- 转义符 ‘'
- 反斜杠可以用来转义,使用r可以让反斜杠不发生转义。。 如 r”this is a line with \n” 则\n会显示,并不是换行。
- 按字面意义级联字符串,如”this “ “is “ “string”会被自动转换为this is string。
- 字符串可以用 + 运算符连接在一起,用 * 运算符重复。
- Python 中的字符串有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始。
- Python中的字符串不能改变。
- Python 没有单独的字符类型,一个字符就是长度为 1 的字符串。
- 字符串的截取的语法格式如下:变量[头下标:尾下标:步长]
- 8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21word = '字符串'
sentence = "这是一个句子。"
paragraph = """这是一个段落,
可以由多行组成"""
#!/usr/bin/python3
str='Runoob'
print(str) # 输出字符串
print(str[0:-1]) # 输出第一个到倒数第二个的所有字符
print(str[0]) # 输出字符串第一个字符
print(str[2:5]) # 输出从第三个开始到第五个的字符
print(str[2:]) # 输出从第三个开始后的所有字符
print(str * 2) # 输出字符串两次
print(str + '你好') # 连接字符串
print('------------------------------')
print('hello\nrunoob') # 使用反斜杠(\)+n转义特殊字符
print(r'hello\nrunoob') # 在字符串前面添加一个 r,表示原始字符串,不会发生转义
函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。空行并不是Python语法的一部分,但空行也是程序代码的一部分。Python可以在同一行中使用多条语句,语句之间使用分号(;)分割。
9)Print 输出
print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end=””:10)import 与 from…import1
2
3
4
5
6
7
8
9
10
11x="a"
y="b"
# 换行输出
print( x )
print( y )
print('---------')
# 不换行输出
print( x, end=" " )
print( y, end=" " )
print()
在 python 用 import 或者 from…import 来导入相应的模块。
将整个模块(somemodule)导入,格式为: import somemodule
从某个模块中导入某个函数,格式为: from somemodule import somefunction
从某个模块中导入多个函数,格式为: from somemodule import firstfunc, secondfunc, thirdfunc
将某个模块中的全部函数导入,格式为: from somemodule import *
11)
当字符串内容为浮点型要转换为整型时,无法直接用 int() 转换:会报错 “invalid literal for int() “。1
2a='2.1' # 这是一个字符串
print(int(a))
需要把字符串先转化成 float 型再转换成 int 型:输出 2。1
2a='2.1'
print(int(float(a)))
12)Python3 基本数据类型
Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。
Python允许同时为多个变量赋值。例如:以上实例,创建一个整型对象,值为 1,从后向前赋值,三个变量被赋予相同的数值。1
a = b = c = 1
也可以为多个对象指定多个变量。例如:1
a, b, c = 1, 2, "runoob"
海象运算符:海象运算符,可在表达式内部为变量赋值。Python3.8 版本新增运算符。1
2
3
4
5
6
7
8
9
10
11
12
13
145 + 4 # 加法
9
4.3 - 2 # 减法
2.3
3 * 7 # 乘法
21
2 / 4 # 除法,得到一个浮点数
0.5
2 // 4 # 除法,得到一个整数
0
17 % 3 # 取余
2
2 ** 5 # 乘方
32如果不用该运算符,此段代码则要改写为:1
2if (n := len(a)) > 10:
print(f"List is too long ({n} elements, expected <= 10)")在Python 3里,只有一种整数类型 int,表示为长整型。1
2
3
4n = len(a)
if n > 10:
print(f"List is to long({n} elements, expected <= 10)")
内置的 type() 函数可以用来查询变量所指的对象类型。此外还可以用 isinstance 来判断:1
2
320, 5.5, True, 4+3j a, b, c, d =
type(a), type(b), type(c), type(d)) print(
<class 'int'> <class 'float'> <class 'bool'> <class 'complex'>
1 | 111 a = |
13)列表
1 | list = [ 'abcd', 786 , 2.23, 'runoob', 70.2 ] |
与Python字符串不一样的是,列表中的元素是可以改变的:
1 | 1, 2, 3, 4, 5, 6] a = [ |
1 | letters=['c','h','e','c','k','i','o'] |
元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开。
创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
1 | # set可以进行集合运算 |
14)字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。
1 | #!/usr/bin/python3 |
1 | 1 - 菜鸟教程 |
15)Python数据类型的转换
16)位运算符
1 | a = 60 # 60 = 0011 1100 |
以上计算结果分别为:
1 | 1 - c 的值为: 12 |
17)Python字符串格式化
Python 支持格式化字符串的输出 。最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中。
1 | print ("我叫 %s 今年 %d 岁!" % ('小明', 10)) |