您的位置:首页 > 编程语言 > Python开发

python中新手应注意的问题和技巧

2017-12-27 09:52 197 查看
1.pirnt不换行输出

两个连续的print()函数输出内容一般会分行显示,即调用print()函数后换行并结束当前行,那么如果要让两个print()函数打印在一行内该怎么做呢?
我们知道,print()中有两个参数sep和end参数。其中print()函数中的逗号默认用空格代替,末尾默认加上换行符。其中sep是代替分隔符,end是代替末尾的换行符。例如:

[python] view
plain copy

coffee_cup = 'coffee'  

print("I love my", coffee_cup, "!",sep="*")  

""" 

输出结果是: 

I love my*coffee*! 

"""  

end函数用来定义一行输出的末尾

[python] view
plain copy

coffee_cup = 'coffee'  

print("I love my", coffee_cup, "!",end="end_flag")  

""" 

输出结果是: 

I love my coffee !end_flag 

"""  

那么,如果要将两个print()函数打印在一行内,则可以利用end参数,将默认的换行符改为空格或是空白即可

[python] view
plain copy

print('hello', end = " ")  

print('world', end = "*")  

print('!')  

""" 

输出结果是: 

hello world*! 

"""  

2.进制转换

从二进制转换为十进制有几种方式
第一种是在二进制数前加上0b,显示时会自动转换为十进制,注意这并不是字符串
1

2
= 0b1010

print(x)

如果是字符串可以利用eval求值
1
= eval('0b1010')

第二种是利用int函数,字符串可以以0b为前缀,也可以不使用
1

2
int('1010',base=2)

int('0b1010',2)

函数会将输入base进制的字符串转换为十进制

base = 2,表示将字符串的内容视为2进制,转换为10进制。
base = 8,表示将字符串的内容视为8进制,转换为10进制。

3.列表推导式

也叫列表解析,灵感取自函数式编程语言 Haskell 。Ta 是一个非常有用和灵活的工具, 可以用来动态的创建列表, 语法如:[ 有关 A的表达式 for A in B]
例如:[i*i for i in range(10)]
打印[0, 1, 4, 9, 16, 25, 36, 49, 64, 81] 0到9的平方数
append函数也可如下使用:
list1 = []
for x in range(10):
     list1.append(x**2)

4.in 和 not 成员运算符的使用注意事项

in和not in语句只能判断一个层次的成员关系 ,
如 :
list1 = [1,2,3,[4,5,6],7]
4 in list1
输出:
Flase
可见,in语句只能判断一个层次的关系

访问内层元素的方法:
list1[3][1]
输出
:4

5.列表排序函数sort()

reverse方法:
翻转整个列表

sort方法:
不需要参数,从小到大排列

如果要从大到小排列:
可以使用sort的其中一个关键字

list1 = [1,2,3,4,5,6,7,8,9]
list1.sort(reverse = True)
输出:
9,8,7,6,5,4,3,2,1,

6.input的使用注意事项

不能写input(“请输入第”i,“个参数:”)

input只能接收最多一个参数

input只能有一个参数,所以可以写成

input("请输入第" + str(i) + "个元素:")
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: