前言:python基本的语法与其他语言诸如C,JAVA等类似,但个中有些许不同。
一、常规语法
1.变量名与关键字
与其他语言类似,变量名由字母、数字、下划线组成,且必须由字母开头。
变量使用不需要提前声明。
2.常用数据类型
int 整型
float 浮点数
str 字符串
用type(a)来求得变量a的类型
在交互式平台中输入如下语句:
a = 3
type(a)
该语句会输出
<type 'int'>
注意:python中不需要用分号(或其他符号)来表示语句的结束,当然加上分号也不会报错。
当然除此之外,python中还有一些复杂的数据类型。如list,tuple。这将在后面讲述。
3.常用操作运算等
与其他类似,+,-,*,/,%
其中整数除法还是整数。如要结果是小数,必须是点除./
4.条件控制语句
格式如下:
if <条件式子>:
语句一
elif <条件式子>:
语句二
else:
语句三
实际情况中,可只有if,或if…else…
5.循环体
1)for循环
格式:
for i in range(times):
do something
这里range()是python的内置函数,表示从1到times的列表。这里相当于循环times次。
函数完整形式:range(start,end,step)
这只是for循环最简单的一种形式,还有其他形式,比如下面这个例子:
遍历列表a,并打印出它的元素,我们可以这样写
a = [2,5,8,9,2,4,0]
length = a.__len__()
for i in range(length):
print a[i]
但是更简单的方式则是下面的形式:
a = [2,5,8,9,2,4,0]
for i in a:
print i
2)while循环
格式:
while <条件式>:
do something
eg:输出10到1:
i = 10
while i>0:
print i
i -= 1
6.终止语句
1)return
函数中返回值。例如:
def absolute_value(a):
if a>0:
return a
else:
return -a
print absolute_value(-3)
输出结果: 3
其中def是对函数的声明,这里定义了一个求绝对值的函数。
2)break
break的作用是跳出循环,执行循环体以外的语句,例如:
for i in range(10):
if (i%2==0):
print i
break
else:
print i+1
print('Finish')
输出结果是:
0
Finish
3)continue
continue的作用是跳出当前循环,执行下一次循环,例如:
for i in range(10):
if (i%2==0):
print i
continue
else:
print i+1
print('Finish')
输出结果是:
0
2
2
4
4
6
6
8
8
10
Finish
7.函数,又叫模块
函数的格式为:
def <函数名>(<参数集>):
函数体
例如:
def absolute_value(a):
if a>0:
return a
else:
return -a
print absolute_value(-3)
其中参数可以为空,也可以为多个。例如:
def sayHello():
print 'Hello'
def maxInt(a,b):
if a>b:
return a
else:
return b
注意:python中不用括号来区分语句块,而是用缩进来表示。因此在写程序的过程中一定要掌握好缩进。
另外:如果我们想引用另一个程序中的函数,则可以使用import
例如:
import numpy as ny
print ny.abs(-3)
我们要使用第三方库numpy中绝对值方法。因此使用import导入numpy,并将其重命名为ny
当然还可以使用:
from numpy import *
*表示该包中的所有内容。当然也可以指定我们要使用的内容,例如:
from numpy import abs
print abs(-3)
函数可以调用其他函数,例如:
#说times次Hello
def sayHello(times):
for i in range(times):
print 'Hello'
#计算一个数的绝对值
def absolute_value(a):
if a>0:
return a
else:
return -a
#计算两个数在数轴上距离原点最大的距离
def maxInt(a,b):
aa = absolute_value(a)#这里调用了计算绝对值的函数
bb = absolute_value(b)#这里调用了计算绝对值的函数
if aa>bb:
print a,"is more far"
return aa
print b,"is more far"
return bb
maxInt(4,-9)
输出:
-9 is more far
9
当然函数不仅可以返回int型,也可以返回float,boolean,str等,例如:
def is_divisible(x,y):
if (x%y==0):
return True
else:
return False
def findByIndex(string,i):
return string[i]
def division(x,y):
return x./y
8.用户输入
1)input
a = input()
2)raw_input()
a = raw_input()
例如:
a = input()
print a
print type(a)
b = raw_input()
print(b)
print type(b)
输出结果:
2#这是用户输入的
2#这是程序输出的
<type 'int'>
ddd#这是用户输入的
ddd#这是程序输出的
<type 'str'>
9.字符串
1)字符串长度
使用len函数
s = "liwenbao"
print len(s)
输出:
8
2)字符串切片
使用方括号[start:end]
s[2:4]
输出:
wen
3)字符串连接
使用加号“+”
a = "li"
b = "wenbao"
c = a + b
print c
输出:
liwenbao
3)字符串比较
使用比较符号,>,<,=
a = 'banana'
b = 'banana'
c = 'bababa'
print a > b#其它有用的比较运算是把词按照字母顺序排列
print a == b#比较两个字符串是否相等
print a > c#其它有用的比较运算是把词按照字母顺序排列
输出:
False
True
True
4)字符串是不可变的
例如:
a = 'liwenbao'
a[6] = 's'
报错:
a[6] = 's'
TypeError: 'str' object does not support item assignment
如果想要改变字符串的某个字符,必须另外新建一个字符串。
当然如果要改变整个字符串是可以的,例如:
a = 'liwenbao'
print a
a = 'li ting'
print a
输出:
liwenbao
li ting
//待续
python学习(二):python基本语法的更多相关文章
-
Python学习二|Python的一些疑问
最近写了一点Python代码,作为一个java程序员,面对Python这么便捷的语言不禁有点激动.不过呢,有时候也会遇到一些无法理解的东西. 例如: er = [[1,2,3], [4,5,6], [ ...
-
Python学习二:词典基础详解
作者:NiceCui 本文谢绝转载,如需转载需征得作者本人同意,谢谢. 本文链接:http://www.cnblogs.com/NiceCui/p/7862377.html 邮箱:moyi@moyib ...
-
Python学习day09 - Python进阶(3)
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
-
Python学习day05 - Python基础(3) 格式化输出和基本运算符
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
-
Python学习笔记—Python基础1 介绍、发展史、安装、基本语法
第一周学习笔记: 一.Python介绍 1.Python的创始人为吉多·范罗苏姆.1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言 ...
-
Python学习笔记(Ⅰ)——Python程序结构与基础语法
作为微软的粉丝,最后终于向Python低头了,拖了两三个月终于下定决心学习Python了.不过由于之前受到C/C#等语言影响的思维定式,前期有些东西理解起来还是很费了些功夫的. 零.先抄书: 1.Py ...
-
【Python学习】Python3 基础语法
==================================================================================================== ...
-
01-Python学习笔记-基础语法
Python标识符 -d 在解析时显示调试信息 -O 生成优化代码 ( .pyo 文件 ) -S 启动时不引入查找Python路径的位置 - ...
-
Python 学习笔记(基础语法 restful 、 Flask 和 Requests)
input 函数 #!/usr/bin/env python3 name = input("\n\n按下 enter 键后退出.") print(name) print() 在 p ...
-
python学习: 优秀Python学习资源收集汇总--转
Python是一种面向对象.直译式计算机程序设计语言.它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用縮进来定义语句块.与Scheme.Ruby.Perl ...
随机推荐
-
好脑袋不如烂笔头-Quartz使用总结
Quartz是Java平台的一个开源的作业调度框架.Quartz.net是从java版本移植到.net版本的..net项目使用Quartz来执行批处理等定时任务非常方便. (1)从nuget上可以安装 ...
-
IOS开发之进阶篇第一章 - 姿势识别器UIPanGestureRecognizer
今天讲一下姿势识别器,UIGestureRecognizer这个是抽象类 1.拍击UITapGestureRecognizer (任意次数的拍击) 2.向里或向外捏UIPinchGestureReco ...
-
1076 K尾相等数
时间限制:500MS 内存限制:65536K提交次数:251 通过次数:80 题型: 编程题 语言: C++;C Description 从键盘输入一个自然数K(99999999>K> ...
-
java中字符串切割的方法总结
StringTokenizer最快 ,基本已经不用了,除非在某些需要效率的场合.Scanner最慢. String和Pattern速度差不多.Pattern稍快些. String和Pattern的sp ...
-
px em rem
px 在Web页面初期制作中,我们都是使用“px”来设置我们的文本,因为他比较稳定和精确.但是这种方法存在一个问题,当用户在浏览器中浏览我们制作的Web页面时,他改变了浏览器的字体大小,这时会使用我们 ...
-
nest expression &;amp; Pyparsing
http://pyparsing.wikispaces.com/ http://bbs.csdn.net/topics/330052586 C++ boost "<([^<> ...
-
函数式编程--为什么会出现lambda表达式?
java一直处在发张和演化的过程中,其中有2个版本从根本上改变了代码的编写方式.第一个就是JDK5之后增加的泛型,还有一个就是现在介绍的函数式编程,lambda表达式. lambda表达式是java8 ...
-
__str__与__repr__
在讲解之前,我们先来了解下str和repr的区别:两者都是用来将数字,列表等类型的数据转化为字符串的形式.不同之处在于str更加类似于C语言中使用printf输出的内容,而repr输出的内容会直接将变 ...
-
SQL insert
INSERT INTO 插入语句 INSERT INTO语句用于在表中插入新记录. 可以用两种方式编写INSERT INTO语句. 第一种方法指定列名和要插入的值: 1 2 INSERT INTO t ...
-
Python Socket 通信
参考: http://www.cnblogs.com/alex3714/articles/5830365.html Socket A network socket is an endpoint of ...