Python基础学习

关于这篇文章

首先,这是我第一次写博客,还请大家不喜勿喷。
开始写博客还是有一些理由的。除了帮助自己复习以及便于再次查找之外,还有满足自己小小成就感的目的吧。(这个目的会不会很奇怪啊?)

关于Python

Python语言,可以说,由于人工智能的需求量大增,使得Python语言也开始火起来了。然后,对于我,由于下一个学期选了和语义分析有关的选修课,所以打算自己学一学。

Python的特点

  • 高级:有高级的数据结构,缩短开发时间与代码量。
  • 面向对象(不强制):为数据和结构相分离的结构化和过程化编程添加了新的活力。
  • 可升级:提供了基本的开发模块,可以在它上面开发软件,实现代码的复用。
  • 可扩展:通过将其分离为多个文件或者模块加以组织管理。
  • 可移植:Python是用C写的,所以具有C的可移植性,使得Python可以运行在任何带有ANSI C编译器的平台上。
  • 易学:关键字少,结构简单、语法清晰。
  • 易读:没有其他语言通常用来访问变量、定义代码块和进行模式匹配的命令式符号。
  • 内存管理器:内存管理是由Python解释器负责的。

Python的安装与配置

需要:

  • Python解释器
  • 配置环境变量

查看Python的版本号

python -V
python --version

指定解释器

我们可以在Python程序首行加入这样的语句,这样Python程序就既可以使用文件方式直接执行,也可以用交互解释器(python + 文件名)的方式执行了。

#!/usr/bin/env python

由于不能确定具体位置,所以我们使用env帮助我们寻找Python。

使Python支持TAB自动补全功能

方法一:

import readline
import rlcompleter
readline.parse_and_bind('tab:complete')

但是,这种方法每次都需要输入

方法二:使用环境变量
将以下代码保存

#!/usr/bin/env python
import readline, rlcompleter
readline.parse_and_bind('tab:complete')

并设置环境变量PYTHONSTARTUP到bashrc之中。

Python 基础语法

编码

在默认的情况之下,Python 3的源代码将会使用UTF-8编码,也就是说,使用Unicode字符串。
我们一般使用以下方式指定编码方式:

# -*- coding: utf-8 -*-

当然,也可以使用其他编码,比如:

# -*- coding: cp-1252 -*-

注释

# A comment, this is so you can read your program later.
# Anything after the # is ignored by python.

print("I could have code like this.") # and the comment after is ignored

# You can also use a comment to "disable" or comment out code:
# print("This won't run.")

print("This will run.")
  • 单行注释:使用“#”进行注释。
  • 多行注释:使用连续的三个单引号(’’’)或者多引号进行注释(""")。
    演示如下:
#单行注释
'''
使用三个单引号的多行注释
为了表示这个是多行的,我们多写几行
'''
"""
使用三个双引号的多行注释
同样,为了表示这个是多行的,我们多写几行
"""

输入与输出

输出

注意:实际上,单引号和双引号可以通用的原因就是为了尽量地避免转义字符,希望能够做到“所见即所得”,从而避免一些错误,同时提升其美观性。

  • 赤裸裸的直接输出
print("Hellos World!")
print("Hello Again")
print("I like typing this.")
print("This is fun.")
print('Yay! Printing')
print("I'd much rather you 'not'.")
print('I "said" do not touch this.')

数字和数学计算

这里需要特别注意的是:Python是一种弱类型的脚本语言,它没有长短的限制(对于大数的存储与计算还是很方便的)。

print("I will now count my chickens:")

print("Hens", 25 + 30 / 6)              # 除法计算将自动进行类型装换,输出的时候,会用小数表示
print("Roosters", 100 - 25 * 3 % 4)     # 取模运算是不会的哟

print("Now I will count the eggs:")

print(3 + 2 + 1 -5 + 4 % 2 - 1 / 4 + 6) # 请注意运算的优先顺序

print("Is it true that 3 + 2 < 5 - 7?")

print(3 + 2 < 5 - 7)                    # 先算术运算,再逻辑运算。 此外,输出的时候,直接用“False”和“True”表示

print("What is 3 + 2?", 3 + 2)
print("What is 5 - 7?", 5 - 7)

print("Oh, that's why it's False.")

print("How about some more.")

print("Is it greater?", 5 > -2)
print("Is it greater or equal?", 5 >= -2)
print("Is it less or equal?", 5 <= -2)

关于优先级

最常用的还是我们所熟知的“括号 > 乘除 > 加减”,在美国,人们使用简称PEMDAS辅助记忆,即括号(Parentheses)、指数(Exponents)、乘(Multiplication)、除(Division)、加(Addition)、减(Subtraction)。不过,我们不能确定优先级的时候也挺多的,这个时候,要么查资料,要么就使用括号。

变量与命名

由于Python是一种弱类型的脚本语言,所以,类型就没有那么重要了。我们无需去手动规定变量的类型。

cars = 100  # 总共有100辆车
space_in_a_car = 4.0    # 每辆车里面有4.0个座位
drivers = 30    # 我们总共有30位司机
passengers = 90 # 同时,我们有90位乘客
cars_not_driven = cars - drivers    # 所以,有多少车没有司机开呢?
cars_driven = drivers   # 有多少司机就能开多少辆车
carpool_capacity = cars_driven * space_in_a_car # 载客能力
average_passengers_per_car = passengers / cars_driven   # 每辆车要安排多少乘客


print("There are", cars, "cars available.")
print("There are only", drivers, "drivers available.")
print("There will be", cars_not_driven, "empty cars today.")
print("We can transport", carpool_capacity, "people today.")
print("We have", passengers, "to carpool today.")
print("We need to put about", average_passengers_per_car, "in each car.")

转义字符

没什么好说的,上表:

转义字符功能
\\反斜杠(\)
\’单引号(’)
\"双引号(")
\aASCII响铃符(BEL)
\bASCII退格符(BS)
\fASCII进纸符(FF)
\nASCII换行符(LF)
\N{name}Unicode数据库中的字符名,其中name是它的名字,仅Unicode适用
\rASCII回车符(CR)
\tASCII水平制表符(TAB)
\uxxxx值为16位十六进制值xxxx的字符
\Uxxxxxxxx值为32位十六进制值xxxxxxxx的字符
\vASCII垂直制表符(VT)
\ooo值为八进制值ooo的字符
\xhh值为十六进制值hh的字符

未完待续

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值