Python基础入门语法和变量类型(一)

1 基础语法

标识符

标识符由字母、数字和下划线(_)组成,其中不能以数字开头,而且区分大小写python

如下划线开头的标识符是有特殊意义的:编程

  • 单下划线开头的如 _foo,表示不能直接访问的类属性,须要经过类提供的接口进行访问,不能经过 from xxx import * 导入;
  • 双下划线开头的如 __foo ,表示类的私有成员;
  • 双下划线开头和结尾的如 __foo__ 表明 Python 中的特殊方法,好比 __init()__ 表明类的构建函数

保留字

保留字是不能用做常数或变数,或者其余任何标识符名称 keyword 模块能够输出当前版本的全部关键字:编程语言

import keyword函数

print(keyword.kwlist)   spa

全部的保留字以下所示:code

 

 

 

and对象

execblog

not索引

assert接口

finally

or

break

for

pass

class

from

print

continue

global

raise

def

if

return

del

import

try

elif

in

while

else

is

with

except

lambda

yield

行和缩进

和其余编程语言的最大区别就是,Python 的代码块不采用大括号 {} 来控制类、函数以及其余逻辑判断,反却是采用缩进来写模块。

缩进的空白数量是可变的,可是全部代码块语句必须包含相同的缩进空白数量,这个必须严格执行,以下所示:

# 正确示例

i = 2if i == 3:

    print('true!')else:

  print('False')

# 错误示例if i == 3:

    print('i:')

    print(i)else:

    print('wrong answer!')

    # 没有严格缩进,执行时会报错

  print('please check again')   

这里将会报错 IndentationError: unindent does not match any outer indentation level,这个错误表示采用的缩进方式不一致,有的是 tab 键缩进,有的是空格缩进,改成一致便可。

而若是错误是 IndentationError: unexpected indent,表示格式不正确,多是 tab 和空格没对齐的问题。

所以,按照约定俗成的管理,应该始终坚持使用4个空格的缩进,而且注意不能混合使用 tab 键和四格空格,这会报错!

注释

注释分为两种,单行和多行的。

# 单行注释

print('Hello, world!')

'''

这是多行注释,使用单引号。

这是多行注释,使用单引号。

这是多行注释,使用单引号。

'''

"""

这是多行注释,使用双引号。

这是多行注释,使用双引号。

这是多行注释,使用双引号。

"""   

输入输出

一般是一条语句一行,若是语句很长,咱们可使用**反斜杠(\)**来实现多行语句。在 [], {}, 或 ()中的多行语句,则不须要反斜杠。

sentence1 = "I love " + \"python"

 

sentence2 = ["I", "love",

          "python"]   

另外,咱们也能够同一行显示多条语句,语句之间用分号(;)分割,示例以下:

print('Hello');print('world')   

对于用户输入,Python2 采用的是 raw_input(),而 3 版本则是 input() 函数:

# 等待用户输入# python 2

user_input = raw_input('请输入一个数字:\n')# python 3

user_input = input('请输入一个数字:\n')

print('user_input=', user_input)   

其中 \n 实现换行。用户按下回车键(enter)退出,其余键显示。

对于 print 输出,默认输出是换行的,若是须要实现不换行,能够指定参数 end,以下所示:

a = 3

b = 2

c = 4

d = 5# 默认换行

print(a)

print(b)# 不换行,并设置逗号分隔

print(c, end=',')

print(d)   

若是你有关于python的问题,能够加博主的扣扣群来交流:879151479

2 基本变量类型

计算机程序要处理不一样的数据,须要定义不一样的数据类型。Python 定义了六种标准的数据类型,分布以下所示:

  • Numbers(数字)
  • Strings(字符串)
  • List(列表)
  • Tuple(元组)
  • Set(集合)
  • Dictionary(字典)

变量赋值

Python 并不须要声明变量的类型,所说的"类型"是变量所指的内存中对象的类型。但每一个变量使用前都必须赋值,而后才会建立变量。给变量赋值的方法是采用等号(=),等号左边是变量名,右边是存储在变量中的值。

一个示例以下:

counter = 100  # 赋值整型变量

miles = 1000.0  # 浮点型

name = "John"  # 字符串

 

print(counter)

print(miles)

print(name)   

Python 还容许同时为多个变量赋值,有如下两种实现方式:

# 建立一个整型对象,值为1,三个变量被分配到相同的内存空间上

n = m = k = 2# 建立多个对象,而后指定多个变量

cc, mm, nn = 1, 3.2, 'abc'

 

print('n=m=k=', n, m, k)

print('cc=', cc)

print('mm=', mm)

print('nn=', nn)   

其中同时给多个变量赋值的方式也是 Python 独特的一种变量赋值方法。

数字

数字类型用于存储数值,它是不可改变的数据类型。Python 3 支持如下几种数字类型:

int (整数)

float (浮点型)

complex(复数)

bool (布尔)

数字类型的使用很简单,也很直观,以下所示:

# int

q = 1# float

w = 2.3# bool

e = True# complex

r = 1 + 3j

print(q, w, e, r) # 1 2.3 True (1+3j)

# 内置的 type() 函数能够用来查询变量所指的对象类型

print(type(q))  # <class 'int'>

print(type(w))  # <class 'float'>

print(type(e))  # <class 'bool'>

print(type(r))  # <class 'complex'>

# 也能够采用 isinstance()# isinstance 和 type 的区别在于:type()不会认为子类是一种父类类型,isinstance()会认为子类是一种父类类型

print(isinstance(q, int)) # True

print(isinstance(q, float)) # False   

对于数字的运算,包括基本的加减乘除,其中除法包含两个运算符,/ 返回一个浮点数,而 // 则是获得整数,去掉小数点后的数值。并且在混合计算的时候, Python 会把整数转换为浮点数

# 加

print('2 + 3 =', 2 + 3)  # 2 + 3 = 5# 减

print('3 - 2 =', 3 - 2)  # 3 - 2 = 1# 乘

print('5 * 8 =', 5 * 8)  # 5 * 8 = 40# 除# 获得浮点数,完整的结果

print('5 / 2 =', 5 / 2)  # 5 / 2 = 2.5# 获得一个整数

print('5 // 2 =', 5 // 2)  # 5 // 2 = 2# 取余

print('5 % 2 =', 5 % 2)  # 5 % 2 = 1# 乘方

print('5 ** 2 =', 5 ** 2)  # 5 ** 2 = 25   

字符串

若是你有关于python的问题,能够加博主的扣扣群来交流:879151479

 

字符串或串(String)是由数字、字母、下划线组成的一串字符。通常是用单引号 '' 或者 "" 括起来。

注意,Python 没有单独的字符类型,一个字符就是长度为 1 的字符串。而且,Python 字符串是不可变,向一个索引位置赋值,如 strs[0]='m' 会报错。

能够经过索引值或者切片来访问字符串的某个或者某段元素,注意索引值从 0 开始,例子以下所示:

 

切片的格式是 [start:end],实际取值范围是 [start:end) ,即不包含 end 索引位置的元素。还会除了正序访问,还能够倒序访问,即索引值能够是负值。

具体示例以下所示:

s1 = "talk is cheap"

s2 = 'show me the code'

print(s1)

print(s2)

# 索引值以 0 为开始值,-1 为从末尾的开始位置

print('输出 s1 第一个到倒数第二个的全部字符: ', s1[0:-1])  # 输出第一个到倒数第二个的全部字符

print('输出 s1 字符串第一个字符: ', s1[0])  # 输出字符串第一个字符

print('输出 s1 从第三个开始到第六个的字符: ', s1[2:6])  # 输出从第三个开始到第六个的字符

print('输出 s1 从第三个开始的后的全部字符:', s1[2:])  # 输出从第三个开始的后的全部字符

# 加号 + 是字符串的链接符# 星号 * 表示复制当前字符串,紧跟的数字为复制的次数

str = "I love python "

print("链接字符串:", str + "!!!")

print("输出字符串两次:", str * 2)

# 反斜杠 \ 转义特殊字符# 若不想让反斜杠发生转义,能够在字符串前面添加一个 r

print('I\nlove\npython')

print("反斜杠转义失效:", r'I\nlove\npython')   

注意:

  • 一、反斜杠能够用来转义,使用 r 可让反斜杠不发生转义
  • 二、字符串能够用 + 运算符链接在一块儿,用 * 运算符重复。
  • 三、Python 中的字符串有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始。
  • 四、Python 中的字符串不能改变

字符串包含了不少内置的函数,这里只介绍几种很是常见的函数:

  • strip(x):当包含参数 x 表示删除句首或者句末 x 的部分,不然,就是删除句首和句末的空白字符,而且能够根据须要调用 lstrip() 和 rstrip() ,分别删除句首和句末的空白字符;
  • split():一样能够包含参数,若是不包含参数就是将字符串变为单词形式,若是包含参数,就是根据参数来划分字符串;
  • join():主要是将其余类型的集合根据必定规则变为字符串,好比列表;
  • replace(x, y):采用字符串 y 代替 x
  • index():查找指定字符串的起始位置
  • startswith() / endswith():分别判断字符串是否以某个字符串为开始,或者结束;
  • find():查找某个字符串;
  • upper() / lower() / title():改变字符串的大小写的三个函数
相关文章
相关标签/搜索