设为首页 收藏本站
查看: 739|回复: 0

[经验分享] python基础学习笔记(六)

[复制链接]

尚未签到

发表于 2015-4-22 10:29:29 | 显示全部楼层 |阅读模式
学到这里已经很不耐烦了,前面的数据结构什么的看起来都挺好,但还是没法用它们做什么实际的事。

基本语句的更多用法



使用逗号输出



>>> print 'age:',25
age: 25
如果想要同时输出文本和变量值,却又不希望使用字符串格式化的话,那这个特性就非常有用了:



>>> name = 'chongshi'
>>> salutation = 'Mr'
>>> greeting = 'Hello.'
>>> print greeting,salutation,name
Hello. Mr chongshi
  

模块导入函数
从模块导入函数的时候,可以使用
import somemodule
或者
form somemodule immport  somefunction
或者
from somemodule import somefunction.anotherfunction.yetanotherfunction
或者
from somemodule import *  
最后一个版本只有确定自己想要从给定的模块导入所有功能进。
如果两个模块都有open函数,可以像下面这样使用函数:
module.open(...)
module.open(...)
当然还有别的选择:可以在语句末尾增加一个as子句,在该子句后给出名字。



>>> import math as foobar   #为整个模块提供别名
>>> foobar.sqrt(4)
2.0
>>> from math import sqrt as foobar  #为函数提供别名
>>> foobar(4)
2.0

赋值语句
序列解包



>>> x,y,z = 1,2,3
>>> print x,y,z
1 2 3
>>> x,y=y,x
>>> print x,y,z
2 1 3
可以获取或删除字典中任意的键-值对,可以使用popitem方



>>> scoundrel ={'name':'robin','girlfriend':'marion'}
>>> key,value = scoundrel.popitem()
>>> key
'name'
>>> value
'robin'
链式赋值
链式赋值是将同一个值赋给多个变量的捷径。



>>> x = y = 42
# 同下效果:
>>> y = 42
>>> x = y
>>> x
42
增理赋值



>>> x = 2
>>> x += 1  #(x=x+1)
>>> x *= 2  #(x=x*2)
>>> x
6
  
  
  控制语句

  if 语句:



name = raw_input('what is your name?')
if name.endswith('chongshi'):
print 'hello.mr.chongshi'
#输入
>>>
what is your name?chongshi  #这里输入错误将没有任何结果,因为程序不健壮
#输出
hello.mr.chongshi
  
else子句



name = raw_input('what is your name?')
if name.endswith('chongshi'):
print 'hello.mr.chongshi'
else:
  print 'hello,strager'
#输入
>>>
what is your name?hh  #这里输和错误
#输出
hello,strager

elif 子句
它是“else if”的简写



num = input('enter a numer:')
if num > 0:
print 'the numer is positive'
elif num < 0:
print 'the number is negative'
else:
  print 'the nuber is zero'
#输入
>>>
enter a numer:-1
#输出
the number is negative

嵌套
下面看一下if嵌套的例子(python是以缩进表示换行的)



name = raw_input('what is your name?')
if name.endswith('zhangsan'):
if name.startswith('mr.'):
print 'hello.mr.zhangsan'
elif name.startswith('mrs.'):
print 'hello.mrs.zhangsan'
else:
print 'hello.zhangsan'
else:
print 'hello.stranger'
  如果输入的是“mr.zhangsan”输出第一个print的内容;输入mrs.zhangshan,输出第二个print的内容;如果输入“zhangsan”,输出第三个print的内容;如果输入的是别的什么名,则输出的将是最后一个结果(hello.stranger)
  
断言
如果需要确保程序中的某个条件一定为真才能让程序正常工作的话,assert 语句可以在程序中设置检查点。



>>> age = 10
>>> assert 0 < age < 100
>>> age = -1
>>> assert 0 < age < 100 , 'the age must be realistic'
Traceback (most recent call last):
File "", line 1, in
assert 0 < age < 100 , 'the age must be realistic'
AssertionError: the age must be realistic
  
  
  循环语句

  打印1到100的数(while循环)



x= 1
while x >>
please enter your name:huhu
#输出
hello.huhu!
打印1到100的数(for 循环)



for number in range(1,101):
  print number
#输出
1
2
3
4
.
.
100
是不是比while 循环更简洁,但根据我们以往学习其它语言的经验,while的例子更容易理解。

一个简单for 语句就能循环字典的所有键:



d = {'x':1,'y':2,'z':3}
for key in d:
  print key,'corresponds to',d[key]
#输出
>>>
y corresponds to 2
x corresponds to 1
z corresponds to 3
  
break语句
break 用来结束循环,假设找100以内最大平方数,那么程序可以从100往下迭代到0,步长为-1



from math import sqrt
for n in range(99,0,-1):
root = sqrt(n)
if root == int(root):
print n
break
#输出
>>>
81

continue 语句
continue结束当前的迭代,“跳”到下一轮循环执行。



while True:
s=raw_input('enter something:')
if s == 'quit':
break
if len(s) < 3:
continue
  print 'Input is of sufficient length'
#输入
>>>
enter something:huzhiheng  #输入长度大于3,提示信息
Input is of sufficient length
enter something:ha        #输入长度小于3,要求重输
enter something:hah       #输入长度等于3,提示信息
Input is of sufficient length
enter something:quit       #输入内容等于quit,结果
  
  
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-59535-1-1.html 上篇帖子: python之日期和时间 下篇帖子: Python和C++交互
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表