博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python基础入门(语法基础)
阅读量:5872 次
发布时间:2019-06-19

本文共 4367 字,大约阅读时间需要 14 分钟。

最近开始整理python的资料,博主建立了一个qq群,希望给大家提供一个交流的同平台 78486745 。

学习编程语言是很有趣的一件事情,但有2点请一定要谨记:

  1. 做人靠自己,码代码也必须靠自己。能不能成为python大牛,靠的是平时逻辑的训练和日复一日的码代码练出来的;
  2. 多总结、多思考、多查阅。实现需求的方式有多种,但总会有另一个办法是更加高效的!

博文内容属于基础篇,实时更新,如有地方写的不好,还请大家批评指正!

python的语法基础

任何一种编程语言都有自己的一套语法,python也不例外。值得提一句的是,python对字母大小写是敏感的。

1、python的换行、缩进和注释

python代码的组织不像java、C一样用“{}”来控制模块,而是用“换行和缩进”来组织模块,一般情况建议4个空格的缩进。

#who big who printa = 3b = 4if a > b:    print(a)else:    print(b)

上述代码中的(#)是python的单行注释符,如果实现多行注释,可以用三个(‘)或(“)来实现。特别需要注意的是,python的(’)和(”)使用方法是相同的。

print("#这是单行注释”)print(“'''这是多行注释'''")

2、python的输入和输出

python的输入和输出在2.X和3.X这两个版本里用法略有不同。

#在3.X版本的python里,输入和输出name = input("what is your name: ")print(name)#在2.X版本的python里,输入和输出name = raw_input("what is your name: ")print name

在3.X版本的python中,简化了输入的语法,输出的(print)被内置成了函数,所以函数后边要有参数传进来>> print(name),个人觉得这两个版本的差别只有个别地方的不同,用到时稍微注意下就可以了(习惯问题就只能酸爽的呵呵了)。

3、什么是变量?

我们回想一下初中时候的代数基础知识:有个边长为a的正方形,那么正方形的面积就是:a*a。这个时候,a就看做是变量,我们给a任意赋一个值,就可以计算出正方形的面积了.

#求边长为a的正方形面积a = 3        #把3赋值给边长as = a*a    #把计算结果赋值给sprint(s)    #输出正方形面积s

除此之外,变量可以是其它的任意数据类型,如字符串、布尔、浮点数,甚至是函数。也可以实现变量之间的赋值。

= 3b = Truec = bb = aprint(a,b,c)___________________________________________________________3 3 True

4、python字符编码

字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题。由于计算机是美国人发明的,因此,最早只有127个字母被编码到计算机里,也就是大小写英文字母、数字和一些符号,这个编码表被称为"ASCII"编码,比如大写字母A的编码是65,小写字母z的编码是122。

但是要处理中文显然一个字节是不够的,至少需要两个字节,而且还不能和ASCII编码冲突,所以,中国制定了GB2312编码,用来把中文编进去。可是世界除了英语和中文之外,还有很多语言。因此,Unicode应运而生。Unicode把所有语言都统一到一套编码里,这样就不会再有乱码问题了。

在计算机内存中,统一使用Unicode编码,当需要保存到硬盘或者需要传输的时候,就转换为UTF-8编码。用记事本编辑的时候,从文件读取的UTF-8字符被转换为Unicode字符到内存里,编辑完成后,保存的时候再把Unicode转换为UTF-8保存到文件:

python基础入门(语法基础)

在最新的Python 3.X版本中,字符串是以Unicode编码的,也就是说,Python的字符串支持多语言;需要注意的是,在2.X版本里,需要加一行注释,否则python2会默认使用ASCII编码。

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

最近开始整理python的资料,博主建立了一个qq群,希望给大家提供一个交流的同平台 78486745 。

5、python的格式化

最后一个常见的问题是如何输出格式化的字符串。我们经常会输出类似"欢迎XXX!您的账户余额为:XXX"之类的字符串,而XXX的内容都是根据变量变化的,所以,需要一种简便的格式化字符串的方式。python的字符串格式化用(%)来实现!

'Hi, %s, you have $%d.' % ('Michael', 1000000)'Hi, Michael, you have $1000000.

在字符串内部,%s表示用字符串替换,%d表示用整数替换,有几个%?占位符,后面就跟几个变量或者值,顺序要对应好。如果只有一个%?,括号可以省略。

python基础入门(语法基础)

6、python基本数据类型

字符串(str)

定义字符串

  python字符串的定义是用(”)或(‘)引起来,三个引号也可以定义一个字符串,不同的是后者支持多行编码。

s0 = "hello"s1 = ' world's3 = ''' hello         python'''s4 = """  python is         good """

常用的字符串计算

  • 1.字符串的加法运算,可以试一下下边代码两个输出异同点
a = 'as1d'b = 'fa3s'print(a,b)print(a+b)
  • 2.字符串的乘法运算:
a = 'as1d's = a * 5print(s)
  • 3.字符串大小比较:比较的是ASCII码的大小。
a = "A"b = "a"if a > b:    print(1)else:    print(0)
  • 4.字符串的in运算:判断某个字符串是否为另外一个字符串的子串
a = 'qwert'b = 'w'if b in a:    print(yes)else:    print(no)

常用的字符串函数

  • index(索引) S.index(substr, [start, [end]])可以通过索引访问字符串内部的任意元素。
    s = "qwertyuiop"#    012345678910
  • python字符串中代表字符串(qwer...)位置的下标,称之为索引(0123...),运行下面代码试一下!
    s = 'qwertyuiop'print(s[0],s[3],s[9]
  • 我们要prints里的每一个字符串,应该怎么办呢?用while循环试一下:

    s = "qwertyuiop"i = 0while i < len(s):print s[i]i += 1

    上述代码中的len()函数返回s字符串的长度值,s[i]代表着当前下标i的元素值。

  • slice(切片) 访问字符串内部任意部分的元素

要访问s字符串里的’yu‘字符串应该怎么实现呢?

s = 'qwertyuiop'print(s[5:7])#python的切片规则,s[start:end]是瞻前不顾后的
  • find(查找) S.find(substr),返回s中substr这个字符串中第一个元素的索引:
    s = "qwertyuiop"a = "io"t = s.find(a)print(t)
  • split(切片) S.split([sep, [maxsplit]]),以sep为分隔符,把S分成一个list。maxsplit表示分割的次数。默认的分割符为空白字符
    s = 'qwer,tyuiop's.split(",")
  • 其它的字符串函数,大家可以在交互一下help(str),返回的是字符串所有的函数方法。
    help(str)

    列表(list)

    列表的常用函数:

    append(...)|      L.append(object) -> None -- append object to end|  clear(...)|      L.clear() -> None -- remove all items from L|  copy(...)|      L.copy() -> list -- a shallow copy of L|  count(...)|      L.count(value) -> integer -- return number of occurrences of value|  extend(...)|      L.extend(iterable) -> None -- extend list by appending elements from the iterable|  index(...)|      L.index(value, [start, [stop]]) -> integer -- return first index of value.|      Raises ValueError if the value is not present.|  insert(...)|      L.insert(index, object) -- insert object before index|  pop(...)|      L.pop([index]) -> item -- remove and return item at index (default last).|      Raises IndexError if list is empty or index is out of range.|  remove(...)|      L.remove(value) -> None -- remove first occurrence of value.|      Raises ValueError if the value is not present.|  reverse(...)|      L.reverse() -- reverse *IN PLACE*|  sort(...)|      L.sort(key=None, reverse=False) -> None -- stable sort *IN PLACE*|

【搜索圆方圆,获得“python教程”,“python下载”,“python入门”类相关信息。】

转载于:https://blog.51cto.com/14225224/2358410

你可能感兴趣的文章
快速定位NodeJs线上问题 - 之火焰图篇
查看>>
leetcode-345-Reverse Vowels of a String
查看>>
Spring Cloud F & Spring Boot 2.0 版本升级说明书
查看>>
代码评审-如何保证缓存与数据库的读写一致性?
查看>>
什么是面向对象,为什么要面向对象
查看>>
聊聊Lambda架构
查看>>
iOS逆向工程- 工具详解
查看>>
开发者必备Linux命令
查看>>
好程序员大数据教程分享之Hadoop优缺点
查看>>
关于C++中ios::sync_with_stdio(false)
查看>>
JS switch 分支语句
查看>>
H5-手机震动
查看>>
Android动画之逐帧动画(FrameAnimation)详解
查看>>
数据库 语句 总结
查看>>
Unity屏幕坐标转UI坐标
查看>>
(转)解释一下SQLSERVER事务日志记录
查看>>
HTML <img> 标签
查看>>
UPS故障案例集(一)
查看>>
基础篇 (2)
查看>>
ECMAScript 6中的Set和Map数据结构
查看>>