Python 基础一

Python 基础

知识点

1、注释

注释:对代码进行解释说明,提供代码可读性。

注释分为单行注释和多行注释,单行注释 以 # 号开头,

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# 1.注释

#单行注释#

#多行注释

# a
# a
# a #多选 ctrol + ?

'''
abs
abs
abs
''' # 因为把它变成了字符串 也起到了注释的作用

"""
a
a
a
""" # 快捷键 ctr + / 或者 ?

2、变量的定义

变量:通俗理解就是储存程序数据的容器

变量定义的格式:变量名 = 数据 (变量名尽量有含义,方便理解)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# 2、变量的定义

# 变量名 = 数据
name = "张三" # str 类型
print(name)

pi = 3.14 # float 类型
print(pi)

is_ok = true # bool 类型
print(is_ok)

# 分数
score = 10

# 不要这样,尽量有意义。或者加注释说明
a = 10
b = 20

# 注意:第一次命名定义了一个变量,后面再出现相同的名字时,是重新赋值。
money = 50
money = money -10

# Python 不需要指定的数据类型,会根据数据自动推导出数据类型

# 通过 type 查看变量类型
score_type = type(score)
print(score_type)

name_type = type(name)
print(name_type)

pi_type = type(pi)
print(pi_type)

print(type(is_ok))
  • 总结:常用数据类型 int, str, float, bool. (容器)list, tuple, dict, set

3、变量的命名规则

由字母、数字、下划线组成,且不能以数字开头。特殊符号(1-9 数字键位上的都不能有)

1
2
3
4
# 驼峰命名法和下划线命名法
my_name = '李四' # 下划线命名法 推荐使用
myName = '王五' # 小驼峰
MyName = '赵六' # 大驼峰 一般在面向对象 面现象类时才使用

4、关键字

在 python 中关键字不能作为变量名。一般有:

1
2
3
import keyword
print(keyword.kwlist)
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
  • :文件名命名 python.py 不好,容易在运行其他文件时错用。

5、常用数据类型转换

1
2
3
4
5
6
7
8
9
mun = 10
my_str = 'zs'
my_str = str(mun) # 将 mun 转化为字符串

my_str = '10'
mun = int(my_str) # 将字符串转化为数字

print(type(my_str))
print(type(mun)) # 如果 my_str = ‘ab’ 不能再转化为正数型

常用数据类型转换:

函数说明
int(x [,base])将 x 转换为一个整数
float(x)将 x 转换为一个浮点型
complex(real[,imag])创建一个复数,real 为实部,imag 为虚部
str(x)将对象 x 转换为一个字符串
repr(x)将对象 x 转化为一个表达式字符串
eval(str)用来计算在字符串中的有效 python 表达式并返回一个对象
tuple(s)将 s 转化为一个元组
list(s)将 s 转化为一个列表
chr(x)将一个整数转化为一个 Unicode 字符
ord(x)讲一个字符转化为它的 ASXII 整数值
hex(x)将一个整数转化为一个十六进制字符串
oct(x)讲一个整数转化为一个八进制字符串
bin(x)将一个整数转化为一个二进制字符串
1
2
3
4
age = input('输入你的年龄:')
print(age)
# print(age+1) 会报错,因为 age 是字符串
print(int(age)+1) # 只能作用于数字类型的字符串

6、输入和输出

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# 输出
print(1)
print('1')
print('hello world')

# 输出多个变量,中间用 , 分割
str1 = 'hello'
str2 = 'world'
print(str1,str2)

# 修改多个变量之间的分割符
print(str1,str2,sep='&')

# 默认有一个换行符 print 源码结尾有个换行 \n
print('hello',end='')
print('world')

# jupyter 中查函数的源码
python??
?? python
help('print')
# Pycharm 中按住ctrl + 鼠标左键

# 输入
input('请输入:') # 所有返回来的值是 str 类型
# py3 中的 input 是一个字符串 py2中:raw_input

# 检查版本
from sys import version_info
if version_info.major == 2:
print('python2')
elif version_info.major == 3:
print('python3')

# 输入多个
str1 = input('请输入:').split(',') # 返回的是一个 list 列表
print(str1)
print(str1[0])

7、格式化输出

1
2
3
name = 'zs'
age = 10
print('我叫%s,年龄%d'%(name,age))
  • 格式化符号:%s , %d , %f , %x

  • %s 输出字符串, %d 输出 int 型数字, %f 输出浮点, %x 输出 16 进制数据

1
2
3
4
5
6
7
8
9
# format 格式化函数
print('我叫{},年龄{}').format(name,age)
print('我叫{na},年龄{ag}'.format(na = name,ag = age)
print('我叫{0},年龄{1}'.format(name,age)
name = 'zip' age = 10
# print('我叫%s,年龄%d' % (name,age))
# print('我叫{na},年龄{ag}'.format(na = name,ag = age))
# print('我叫{},年龄{}'.format(name,age))
# print('我叫{0},年龄{1}'.format(name,age))

8、if 语句

判断版本:

1
2
3
4
5
6
7
# 检查版本
from sys import version_info
if version_info.major == 2:
print('python2')
#elif version_info.major == 3:
else:
print('python3')

条件判断格式,多条件判断

1
2
3
4
5
6
7
8
# 多条件判断
age = 3
if age > 18:
print('adult')
elif age > 6:
print('teenager')
else:
print('kid')
1
2
3
4
5
6
7
8
9
# 多个 elif 语句
if <判断条件>:
<执行1>
elif <判断条件>:
<执行2>
elif <判断条件>:
<执行3>
else:
<执行4>

逻辑运算符:

1
2
3
4
5
6
7
8
9
10
11
12
# 逻辑运算符
# and 与 多个条件同时成立,结果 Ture ,只要有一个 False,结果就是 False
# or 或 只要有一个条件成立,结果 Ture,多个条件都是False,结果为False
# not 取反
# score = 90
# if score > 0 and score<=90:
# print('成立')

# 如果在加条件 or (与或非的优先级)
# 不知掉优先级时用()
# print(True or True and False)
# print(not True and False)
  • 总结:not > and > or

9、运算符

9.1 算数运算符

a = 10 , b = 20

运算符描述实例
+两个对象相加 a + b 输出结果 30
-得到负数或者一个数减去另一个数 a - b 输出结果为 -10
*两个数相乘或是返回一个呗重复若干次的字符串 a * b 输出结果 200
/b / a 输出结果 2
//取整返回商的整数部分 9 // 2 输出结果为 4 ,9.0 // 2.0 输出结果 4.0
%取余返回除法的余数 b % a 输出结果 0
**指数a ** b 10 的 20 次方,输出结果 100000000000000000000

  • 混合运算时,优先顺序为: ** 高于 * / % // 高于 + -,为了避免歧义,建议用()来处理优先级别。
  • 不同类型的数字在进行混合运算时,整数会转换为浮点型进行运算。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
num1 = 3.1415 # float
print(int(num1))
num1 = 3.1415 # float

# print(int(num1))

# 四舍五入
# print(round(num1))

# 四舍五入小数点 2 位
# print(round(num1,2))

# 保留 n 位小数,不进行四舍五入

# 3.1415*1000 取整 再除以 1000

#封装
def func(num,n):
# 做什么
d = 10**(-n)
return (num//d)*d
abc = func(num1,3) # type(abc) float
print(abc)
# help("return")
1
2
3
4
5
6
7
# 双层 for 循环
t = 0
for i in range(0,5):
print('i的结果:{}'.format(i))
for j in range(0,5):
t += 1
print('t的结果{}'.format(t)) #1-25

9.2 赋值运算符

运算符描述实例
=赋值运算符把 等号右边赋给左边的变量,如 num=1+2*3结果为num = 7
1
2
3
4
5
# 单变量赋值
num = 10

# 多变量赋值
num1,num2,f1,str1 = 1002003.14,“hello”

9.3 复合运算符

运算符描述实例
+=加法赋值运算符c +=a 等效于 c = c+a
.=减法赋值运算符c -=a 等效于 c = c-a
*=乘法赋值运算符c =a 等效于 c = c\a
/=除法赋值运算符c /=a 等效于 c = c/a
%=取模赋值运算符c %=a 等效于 c =c%a
**=幂赋值运算符c *=a 等效于 c =c\*a
//=取整赋值运算符c //=a 等效于 c =c//a

10、循环

程序执行的三大流程:顺序执行、选择执行(if)、循环执行 while for

conda 中选中,按 L 调出行标

  • 循环要有结束条件,死循环

10.1、while 循环语句语法

1
2
3
4
while 条件:
条件满足时,做事情1
条件满足时,做事情2
条件满足时,做事情3

例如: 输出 100 条 helloword

1
2
3
4
i = 0
while i <100:
print('hello world')
i = i + 1

Python 提供 range() 函数

1
2
3
4
5
6
# range(1,6) 可迭代对象
# range(起始数据,结束数据,步长),步长默认是 1,不包含结束数据

# for
print(list(range(1,6)))
print(list(range(5)))

配合 for 做循环

1
2
3
4
5
6
7
8
for i in range(5): # [0,1,2,3,4]
print(i)
# 效果等同于 while 循环

i= 0
while i<= 5:
print(i)
i += 1
  • 练习 9*9 乘法表
1
2
3
4
5
6
7
8
9
10
# 9*9 乘法表
i = 1
while i <= 9: # 行数
j = 1
while j<= i: #列数
# print('%d * %d = %d' % (j,i,j*i))
print('{} * {} = {}'.format(j,i,i*j),end = '\t')
j += 1
print('')
i += 1

跳出循环 continue break

1
2
3
4
5
6
7
8
num = 1
while num <= 5:
if num == 3:
num +=1
continue
print(num)
num += 1
# 输出结果 1 2 4 5
1
2
3
4
5
6
7
8
num = 1
while num <= 5:
if num == 3:
num +=1
break
print(num)
num += 1
# 输出结果 1 2
  • continue 结束当前循环 break 结束整个循环
感谢您的阅读,本文由 LEE 版权所有。如若转载,请注明出处:LEE(https://ChubbyLEE-Math.github.io/2020/07/07/Python%20%E5%9F%BA%E7%A1%80%E4%B8%80/
Hello World
Python 基础二