目录
1.学习python的发展方向
1.Web全栈开发方向
2.数据科学方向
3.人工智能方向-机器学习
4.人工智能方向-深度学习
2.print()函数
- print函数用于输出信息,输出的目的地可以是文件,控制台。
# 默认输出到标准输出流
a = 100
b = 200
# 100,200 ending!
print(a,b,sep=',',end=" ")
print("ending!")
3.open()函数
open函数打开一个文件。
4.转义字符
python中的转义字符是\
print('\\') # \
print('\'') # '
5.原字符
- 原字符:不希望字符串中的转义字符起作用,就使用原字符。
- 使用语法:在字符串前加上r或者R注意事项:最后一个字符不能是反斜杠
- 示例
print(R"Hello\nWorld"); #Hello\nWorld
#等价于
print('hello\\nworld')
6.查看python中的保留字
- 为了程序的可读性,不要使用python中的保留字作为变量名,函数名,模块名等。
import keyword
print(keyword.kwlist)
#['False', 'None', 'True', '__peg_parser__', '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']
1.global关键字
- 在局部作用域内声明一个全局变量。
- 在局部作用域想要对全局作用域的全局变量进行修改时,需要用到 global关键字。
#UnboundLocalError: local variable 'string' referenced before assignment
# string = 'hello'
#
# def alter_string():
# string += 'world!'
# print(string)
#alter_string()
string = 'hello'
def alter_string():
global string
string += 'world!'
print(string) #helloworld!
alter_string()
2.yield关键字
- yield关键字所在的函数称之为生成器。
def fun(number):
while number < 10:
number += 1
yield number
for i in fun(0):
print(i) # 1~10
7.python中的变量和常量
1.变量
变量由类型,标识符,值这三部分组成。变量的实质是内存地址的别名
#定义一个变量
str = 'HelloWorld'
#可以通过内置函数id()获取标识,既对象所存储的内存地址
print(id(str)) #1944176769968
#可以通过内置函数type()获取对象的数据类型
print(type(str)) #<class 'str'>
#将对象的值打印输出
print(str) #HelloWorld
2.常量
在Python中没有一个专门的语法代表常量,程序员约定俗成用变量名全部大写代表常量。
PI = 3.14159
8.python中的内置数据类型
- 数值类型
- int
- float
- complex:
x = 1 + 2j
a = 16 #bit_length方法计算整数在内存中占用的二进制码的长度. print(a.bit_length()) #5
注意:在浮点类型中,浮点数存储具有不精确性,使用浮点数进行运算时,可能会出现小数位数不确定的情况。解决方案:导入模块decimal
a = 1.1;
b = 2.2;
print( a + b ); #3.3000000000000003
from decimal import Decimal
print( Decimal('1.1') + Decimal('2.2') ); #3.3
- 文本类型str:
字符串类型中,单引号和双引号定义的字符串必须在一行,三引号(''')定义的字符串可以分布在连续的多行
#字符串的相加和相乘操作
name = '张三'
gender = '男'
print(name + gender) #张三男
#相乘其实就是复制自己多少次,再拼接在一起
print(gender * 3) #男男男
- 序列类型
- 列表list:
x = ["apple", "banana", "cherry"]
- 元组tuple:
x = ("apple", "banana", "cherry")
- range:
x = range(6)
- 列表list:
- 映射类型:字典dict
x = {"name" : "Bill", "age" : 63}
- 集合类型:set,frozenset
x = {"apple", "banana", "cherry"}
x = frozenset({"apple", "banana", "cherry"})
- 布尔类型:bool
- 二进制类型: bytes, bytearray, memoryview
#bytes类型
x = b"Hello"
#bytearray类型
x = bytearray(5)
print(x) #bytearray(b'\x00\x00\x00\x00\x00')
print(type(x))#<class 'bytearray'>
#memoryview类型
x = memoryview(bytes(5))
print(x) #<memory at 0x000001A5662F8AC0>
print(type(x))#<class 'memoryview'>
9.python中的数据类型转换
- str->int:使用内置函数int()
#全部由数字组成的字符串才可以转化成数字
a = '90'
print(int(a)) #90
- bool->str:使用内置函数str()
# bool ---> str
t1 = True
print(str(True)) # 'True'
- list->str:list里面所有的元素必须是字符串类型才可以
l1 = ['hi','hello','world']
print(''.join(l1)) #hihelloworld
- list->set/set->list
# list ---> set
s1 = [1, 2, 3]
print(set(s1)) #{1, 2, 3}
# set ---> list
set1 = {1, 2, 3, 3,}
print(list(set1)) # [1, 2, 3]
10.python中的注释
- 单行注释:#开头
- 多行注释:一对三引号(""")
- 中文编码声明注释:在文件开头加上中文编码声明注释,用以指定源码文件的编码格式
# coding:utf-8
"""
这是多行
注释
"""
11.input()函数
name = input('请输入您的姓名:')
age = input('请输入您的年龄:')
print('姓名为:',name,'年龄为:',age)
if(int(age) > 35):
print('您该退休了!')
else:
print('您还能再干几年!')
12.python中的运算符
1 标准运算符中的整除运算: print( 1 // 2); #整除运算,0
注意:整除时,对于一正一负,向下取整
print( -9 // 4);#-3
2 幂运算符: print( 3 ** 2 );#9
3 赋值运算符:支持系列解包赋值 a, b, c = 10, 20, 30;
4 ==
与is的区别.==
比较的是对象的值还是标识呢?比较的是值。而is比较的是id这个标识(即内存地址),内存地址可以通过id()这个成员函数获取。
# Python为了优化效率,内置了小整数,浮点数对象池和简单字符串对象池
a = 10;
b = 10;
print( a == b ); #true
print( a is b ); #true,这里is比较的是两个变量的地址(相同)
- 成员运算符in/not in
list = ["hello", 23, 12.3, True]
print(23 in list) #true
print(False not in list) #true
- 三目运算符
a = 200
b = 100
max = a if a > b else b
13.对象的布尔值
- python中一切皆对象,所有对象都有一个布尔值。可以使用bool()函数获取对象的布尔值。**注意:以下对象的布尔值均为False。
- 数值0
- False
- None
- 空字符串
- 空列表
- 空元组
- 空集合
- 空字典
print(bool(False)); #False print(bool(0)); #False print(bool(0.0)); #False print(bool(None)); #False print(bool('')); #False print(bool("")); #False print(bool([])); #空列表 print(bool(list()));#空列表 print(bool(())); #空元组 print(bool(tuple()));#空元组 print(bool({})); #空字典 print(bool(dict()));#空字典 print(bool(set())); #空集合
14.分支结构
- 单分支结构
#单分支结构
sum = 1000 #余额
s = int(input("请输入取款金额:")) #取款金额
if sum >= s:
sum -= s
print("取款成功,余额为:",sum);
- 双分支结构
#双分支结构
num = int(input("输入一个数:"))
if num % 2 == 0:
print(num,"偶数");
else:
print(num,"奇数");
- 多分支结构
语法结构:
if 条件表达式1: 条件执行体1 elif 条件表达式2: 条件执行体2 else: 条件执行体N
- 示例:
grade = int(input('请输入您的真实分数:')) if(100 >= grade >= 90): print('您的成绩为A') elif(89 >= grade >= 80): print('您的成绩为B') elif(79 >= grade >= 60): print('您的成绩为C') else: print('您的成绩为D')
- 嵌套if的使用
15.条件表达式
- 条件表达式是if...else的简写版。
- 语法结构:x if 判断条件 else y
- 运算规则:如果判断条件的布尔值为True则执行x否则执行y.`
- 示例:
#从键盘录入两个数,比较他们的大小 num_a = int(input("请输入第一个数:")); num_b = int(input("请输入第二个数:")); print( str(num_a) + "大于等于" + str(num_b) if num_a >= num_b else str(num_a) + "小于" + str(num_b))
16.pass语句
pass语句什么都不做,只是一个占位符,用在语法上需要语句的地方
比如说:
answer = input("您是会员吗?Y/N")
if answer == 'Y':
pass; #还没有想好条件执行体如何写时可以这样做。
else:
pass;
17.类range
- 创建range对象的三种方式
# 1.range(stop),创建一个[0,stop)之间的整数序列,步长为1
x = range(5)
print(x) #range(0, 5)
print(list(x))#[0, 1, 2, 3, 4]
# 2.range(start,stop),创建一个[start,stop)之间的整数序列,步长为1
x = range(1,5)
print(x) #range(1, 5)
print(list(x))#[1, 2, 3, 4]
# 3.range[start,stop,step),创建一个[start,stop)之间的整数序列,步长为step
x = range(1,5,2)
print(x) #range(1, 5, 2)
print(list(x))#[1, 3]
18.while循环/while...else...
- while循环
#输出1~100所有的数字
#1.for循环
for i in range(1,101):
print(i,end='\t')
i = 1
#2.while循环
while(i <= 100):
print(i,end='\t')
i += 1
#求出1-100所有数的和.
#1.for循环
sum = 0
for i in range(1,101):
sum += i
print('sum:',sum)
#2.while循环
i,sum = 1,0
while(i <= 100):
sum += i
i += 1
print('sum:',sum)
- while...else...:while 后面的else 作用是指,当while 循环正常执行完,中间没有被break 中止的话,就会执行else后面的语句
count = 0
while count <= 5 :
count += 1
if count == 3:break
print("Loop",count)
else:
print("循环正常执行完啦")
print("-----out of while loop ------")
#Loop 1
#Loop 2
#-----out of while loop ------
19.for-in循环
#遍历HelloWorld
for item in "HelloWorld":
print(item)
#如果在循环体中不需要使用到自定义变量,可将自定义变量写成'_'
for _ in range(5):
print("人生苦短,我用Python"); #打印五次
20.流程控制语句break和continue
- break:跳出整个循环
- continue:跳出本次循环
21.嵌套循环
#打印九九乘法表
for i in range(1,10): #行数1~9
for j in range(1,i + 1):
print(i,'*',j,'=',i * j,end = '\t')
print() #换行