python学习(二):python基本语法
前言: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 ...
随机推荐
- git tag知多少
这个命令,其实很有用,类似clearcase中的label,就是给一个版本设置一个标记(标签),方便后期查找特定的版本. tag和commit的sha1那串字符串的关系,不是很大,但是还是要说一下的. ...
- ef 高级操作
一:动态拼接条件查询 var expression = PredicateBuilder.True<OQC_MES_INF_UL_QMS_OFFLINE>(); SYS_ROLES_CON ...
- [原]网络库libevent在Visual Studio中的使用方法
libevent是一个事件触发的网络库,适用于windows.linux.bsd等多种平台,内部使用select.epoll.kqueue等系统调用管理事件机制.著名分布式缓存软件memcached也 ...
- 【控件扩展】带圆角、边框、渐变的panel
下载地址: http://files.cnblogs.com/chengulv/custompanel_demo.zip using System; namespace LC.Fun { /// & ...
- string和stringBuilder区别
C# String 对象是不可改变的.每次使用 System.String 类中的方法之一时,都要在内存中创建一个新的字符串对象,这就需要为该新对象分配新的空间.在需要对字符串执行重复修改的情况下,与 ...
- item30,最小的k个数
剑指offer给出两类方法: 1,借助快排的思想,需要修改输入数组的元素,时间复杂度O(n) 2,借助STL中set或者multiset,因为它们的底层数据结构是红黑树实现的,插入数据时间复杂度为O( ...
- 328. Odd Even Linked List
Given a singly linked list, group all odd nodes together followed by the even nodes. Please note her ...
- BIP_开发案例02_BI Publisher中复杂案例实现代码(案例)
2014-12-27 Created By BaoXinjian
- PLSQL_Oracle临时表Temporary Table基本概念和用法(概念)
2014-06-08 Created By BaoXinjian
- python入门,猜数
#this is a sample guess program import random guesses_made =0 name = raw_input('Hello! whats your na ...