前言:
笔者之前是从事的是C++的开发,所用的开发语言有c、c++,实际的项目中基于其二(mfc、qt),进行过应用程序的开发,其中有桌面应用、动态库等,结合实际的项目及相关的书籍,个人感觉应该把所有的基础知识都应该掌握,毕竟每一个小知识点都可能是自己成功路上的垫脚石。
由于python比较盛行,其在大数据方面有一定的优势,笔者准备了解下,再者最近的AI,ChatGPT比较盛行,越来越感觉人工智能的逐渐逼近,人工可能在不久的未来即将被人工智能替代,而那些创造型的行业比较难模仿,之前听过比如:绘画,不管其它的,反正在任何时候,自己的学习都是不能搁置的,毕竟机会来了,它不是看你准备好了么,机会来了自己准备好了,那叫如鱼得水,顺势而为;那如果机会来了,自己没有能力承担,那很有可能就会错失良机,毕竟好的机会不是你想出现就会出现的。
python入门教程:
一、数据类型
定义变量不需要写类型,它自己会匹配到类型,这其中可以通过type输出其类型,当然其其中的类型比较少,有 Numbers(数字)、String(字符串)、List(列表)、Tuple(元组)、Dictionary(字典):
num1=1234
num2=12.34
num3='abc'
print(type(num1))
print(type(num2))
print(type(num3))
<class 'int'>
<class 'float'>
<class 'str'>
格式化输出:
id = 1
name = 'xiaoming'
age = 20
weight = 60.68
print('学号:%05d 的%s %d岁了,他的体重是 %.3lf kg' %(id, name, age, weight))
print(f'学号:{id} 的{name} %{age}岁了,他的体重是 {weight} kg')
输出为: 学号:00001 的xiaoming 20岁了,他的体重是 60.680 kg
学号:1 的xiaoming %20岁了,他的体重是 60.68 kg
=========================================================================
数字类型比较简单,字符串类型一般对应的字符串操作函数,对应的操作有:
1.拆分(split);
2.查找子串、拼接[str[i:j],join];
3.替换特定的字符串(replace);
4.大小写转换(lower、upper);
5.删除两侧空白字符(strip),当然也可以单独删除左右侧的空白字符;
6.字符串首字母大写(capitalize),字符串中每个单词首字母大写(title);
=========================================================================
list,类似于c中的字符串数组;
1.动态扩充: extend
2.子串出现的位置(index)
3.插入子串(insert)
4.删除和清空(del clear)
5.排序及逆序(sort reverse)
6.拷贝(copy)、循环
7.嵌套(类似于二维数组),当然可能还有更多维的
=========================================================================
元组(元组与列表类似,不同之处在于元组的元素不能修改。):
t1 = (10, 20, 30)
print(t1)
=========================================================================
字典:
字典是另一种可变容器模型,且可存储任意类型对象。
当然其也有对应的增删改查(感觉类似于c++ stl中的map),那么既然是键值对的形式存在,那访问操作什么的,就那map无二异了:
下面举个遍历的例子就清楚了:
dict1 = {'name': 'TOM', 'age': 20, 'gender': '男'}
for item in dict1.items():
print(item)
输出为:
('name', 'TOM')
('age', 20)
('gender', '男')
这里说下删除(其删除的时候找不到指定的元素,直接就会编译报错),这块和其它的语言有点不一样:
=========================================================================
二、条件,循环
1、条件
if 判断条件:(:类似与c语言中的{},一个条件中可能有多条执行语句)
执行语句……
else:
执行语句……
2、循环:
2.1、for循环,它里面有关键字range
num = 1
for num in range(1, 10):
print('%d' % num)
2.2 while
while(num < 10):
print('%d' % num)
num += 1
两者不同的区别是for循环的range,变量会自己运算,而while需要自己写循环变量的运算规则(自增还是 +2,发现里面没有i++,++i这样的运算)
下面写个例子,输出9*9乘法口诀表("有个\t的制表符需要注意")
i = 1
j = 1
for i in range(1, 10):
for j in range(1, 10):
if j > i:
print("")
break
print('%d * %d = %d' %(i, j, i*j), end = '\t')
1 * 1 = 1
2 * 1 = 2 2 * 2 = 4
3 * 1 = 3 3 * 2 = 6 3 * 3 = 9
4 * 1 = 4 4 * 2 = 8 4 * 3 = 12 4 * 4 = 16
5 * 1 = 5 5 * 2 = 10 5 * 3 = 15 5 * 4 = 20 5 * 5 = 25
6 * 1 = 6 6 * 2 = 12 6 * 3 = 18 6 * 4 = 24 6 * 5 = 30 6 * 6 = 36
7 * 1 = 7 7 * 2 = 14 7 * 3 = 21 7 * 4 = 28 7 * 5 = 35 7 * 6 = 42 7 * 7 = 49
8 * 1 = 8 8 * 2 = 16 8 * 3 = 24 8 * 4 = 32 8 * 5 = 40 8 * 6 = 48 8 * 7 = 56 8 * 8 = 64
9 * 1 = 9 9 * 2 = 18 9 * 3 = 27 9 * 4 = 36 9 * 5 = 45 9 * 6 = 54 9 * 7 = 63 9 * 8 = 72 9 * 9 = 81
这块最后说下其也和c语言一样里面也有continue和break这样的关键字,而这两个关键字和c语言中的用法是一样的,具体根据自己的实际业务场景进行使用。
=========================================================================
三、函数
其定义函数为(记得写函数时需要顶格写):
关键字(def) 函数名:
….(函数体)
使用的化,在调用的地方直接使用就行(这个是函数体实现和调用处在同一个源文件),如果在不同的源文件,这个就需要使用模块了,因为开发一个大型项目必然会有多个源文件或者头文件,
比如使用另一个源文件中的函数就需要使用import 模块.函数名。
# 函数的说明文档的高级使用(查看函数的说明文档(函数的解释说明的信息))
函数的说明类似于一个产品的说明书一样,好的说明(注释)是优美的,错误的注释会误导别人,没有注释更是丈二的何少摸不着头脑,
def sum_num1(a, b):
"""
求和函数sum_num1
:param a: 参数1
:param b: 参数2
:return: 返回值
"""
return a + b
四、文件操作
文件操作和c语言大差不多,其更简单:
pFile = open("C:\\Users\\Administrator\\Desktop\\test\\demo.txt", "w")
pFile.write("123456789")
pFile.close()
文件的操作方式和c语言的操纵方式类似有(r w a)
以上是最基础的,后面会结合某个比较大一点的demo程序,运用其模块和包的思想,当然其里面还有其它的知识点(结合面向对象的思想等),后面再总结分享吧。