Python基础

点击上方蓝字关注我们吧

Python是著名的工程师Guido van Rossum在1989年为了打发无聊的圣诞节而开发的一个编程语言。相较于晦涩难懂的C, C++语言,Python简洁易懂的代码和众多优秀的基础代码库,让它迅速跃迁为全世界最流行的语言之一。我们用它来开发应用软件无须从零开始,调用已有的库即可实现相应的功能

3.1 Python简介

对于刚刚从事编程工作或者学习的读者来说,Python简直是一种除了不能生孩子,干啥都行的工具。它就像是一把枪,只要装上子弹,扣扳机发射就可以了,而C,C++这些语言更像是倚天剑和屠龙刀,需要深厚的内力才能把它用起来。

当然,Python还是有它所不能企及的领域,例如编写操作系统,这个必须由C语言去完成,因为C语言是最贴近硬件的一门语言,用它编写的操作系统运行速度非常快。因此, Python这种被高度封装的语言,由于运行速度较慢,一般适合去编写高级应用程序,相对底层的程序还是需要别的语言去完成。

运行速度慢只是它其中一个缺点,不能加密能算得上它另外一个大缺点了,不过本着互联网开源免费的精神,代码不能加密在笔者看来也算不上啥缺点,兴许你的代码并没有人去看呢?那加不加密又有啥用。

最后一个缺点就是版本了,目前Python有两个版本,2.X和3.X,他们有些不兼容,至于如何不兼容,笔者在此就不赘述了,因为Python的2.X版将在2020年就被官方停止维护了。因此,刚刚入门Python这门语言的读者直接上手Python 3.X版本即可。

3.2 Python初阶学习

3.2.1 变量赋值

1.  # /chapter3/3_2_Basis.ipynb
2.  a = 1  # 单变量赋值  
3.  c = b = 2  # 多变量赋值  
4.  print(a)  
5.  print(b, c)

1

2 2

1.  # 变量类型  
2.  name = 'Chile'  # 字符串  
3.  miles = 1000.0  # 浮点型  
4.  num = 100  # 整形  
5.  # 打印变量类型  
6.  print(type(name))  
7.  print(type(miles))  
8.  print(type(num))

<class 'str'>

<class 'float'>

<class 'int'>

3.2.2 标准数据类型

1. Python有6个标准的数据类型

(1) Numbers(数字)

(2) String(字符串)

(3) List(列表)

(4) Tuple(元组)

(5) Dictionary(字典)

(6) Set(集合)

其中,List,Tuple,Dictionary,Set可以放任意数据类型

2. 数字

1.  # Numbers: int & float  
2.  a = 1  # int  
3.  b = 1.0  # float  

3. 字符串

1.  # String  
2.  my_name = 'Chile'  
3.  print(my_name[0])  # 打印第0个字符  
4.  print(my_name[1: 3])  # 打印第1个到第2个的字符  
5.  print(my_name[2:])  # 打印第2个到最后一个的字符  
6.  print(my_name[-1])  # 打印倒数第一个字符

C

hi

ile 

e

4. 列表

1.  # List 可以放任意类型的数据类型  
2.  num_list = [1, 2, 3, 4]  
3.  str_list = ['Chile', 'b', 'c']  
4.  mix_list = ['a', 1, 1.0, num_list, str_list]  
5.  print(num_list)  
6.  print(str_list)  
7.  print(mix_list)

[1, 2, 3, 4]

['Chile', 'b', 'c']

['a', 1, 1.0, [1, 2, 3, 4], ['Chile', 'b', 'c']]

5.元组

1.  # Tuple 可以放任意类型的数据类型  
2.  mix_tuple = ('chile', 111, 2.2, 'a', num_list)  # 不可赋值  
3.  print(mix_list[1])  
4.  print(mix_tuple)  
5.  mix_tuple[1] = 1  # 不可赋值,否则报错

6.字典

1.  # Dictionary 可以放任意类型的数据类型  
2.  test_dict = {'name': 'Chile', 'age': 18, 'num_list': num_list, 'tuple': mix_tuple}  
3.  print(test_dict)  
4.  print(test_dict.keys())  # 打印键  
5.  print(test_dict.values())  # 打印值  
6.  print(test_dict['name'])  
7.  print(test_dict['num_list'])  
8.  print(test_dict['tuple'])

    

7.字典的赋值陷阱

1.  # 直接字典赋值, 被赋值的字典的值改变,原字典也会改变  
2.  test_dict_copy = test_dict  
3.  test_dict_copy['name'] = 'alialili'  
4.  print(test_dict['name'])   
5.  print(test_dict_copy['name'])

alialili

alialili

1.  # 使用深拷贝避免这种情况发生  
2.  from copy import deepcopy  
3.  test_dict_copy =  deepcopy(test_dict)  
4.  test_dict_copy['name'] = 'Mary'  
5.  print(test_dict['name'])   
6.  print(test_dict_copy['name'])

alialili

Mary

8.集合

1.  # 可以放任意类型的基础数据类型  
2.  # Set 集合:与数学意义上的集合意义一致,集合内每一个值都是唯一的  
3.  test_set = {'abc', 1, 1, '1', 'chile'}    
4.  print(test_set)  # 打印出来会只有一个数字1,因为集合的去重功能

{1, 'chile', '1', 'abc'}

3.2.3  数据类型转换

1.  tr_a = '1'  


2.  int_b = int(tr_a)   # 字符串转数字  
3.  str_c = str(int_b)   #  数字转字符串  
4.  float_d = float(str_c)  # 字符串转浮点  
5.  print(type(tr_a))  
6.  print(type(int_b))  
7.  print(type(str_c))  
8.  print(type(float_d))  
9.  print('---------------')  
10.  tr_list = [1, 2, 3]  
11.  set_a = set(tr_list)  # 列表转集合  
12.  list_b = list(set_a)  # 集合转列表  
13.  print(type(tr_list))  
14.  print(type(set_a))  
15.  print(type(list_b))

<class 'str'>

<class 'int'>

<class 'str'>

<class 'float'>

---------------

<class 'list'>

<class 'set'>

<class 'list'>

3.2.4  算数运算符

1.  # 运算符  
2.  a = 2  
3.  b = a + 2  
4.  c = a - 1  
5.  d = a * b  
6.  e = d / c  
7.  f = d % c  # 取余  
8.  g = 3 // 2  # 整除(向下取整)  
9.  h = 2**3  # 求幂  
10.  print('c:', c)  
11.  print('d:', d)  
12.  print('e:', e)  
13.  print('f:', f)  
14.  print('g:', g)  
15.  print('h:', h)

c: 1

d: 8

e: 8.0

f: 0

g: 1

h: 8

3.2.5  格式化

%s 代表字符串

%d 代表整数

%f 代表浮点

%.2f 代表保留小数点后两位

1.  # 格式化  
2.  print('abc %d, dhfjdhfhdh, %s, sjdhsjhdhs, skdjskjsk%f,sdjsdhs' % (1, 'Chile', 1.0))  
3.  # %.2f保留小数点  
4.  print('abc %d, dhfjdhfhdh, %s, sjdhsjhdhs, skdjskjsk%.2f,sdjsdhs' % (1, 'Chile', 1.0))

abc 1, dhfjdhfhdh, Chile, sjdhsjhdhs, skdjskjsk1.000000,sdjsdhs

abc 1, dhfjdhfhdh, Chile, sjdhsjhdhs, skdjskjsk1.00,sdjsdhs

下一期,我们将介绍

Python进阶学习

敬请期待~

 

关注我的微信公众号~不定期更新相关专业知识~

内容 |阿力阿哩哩 

编辑 | 阿璃 

点个“在看”,作者高产似那啥~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值