1.pirnt不换行输出
两个连续的print()函数输出内容一般会分行显示,即调用print()函数后换行并结束当前行,那么如果要让两个print()函数打印在一行内该怎么做呢?
我们知道,print()中有两个参数sep和end参数。 其中print()函数中的逗号默认用空格代替, 末尾默认加上换行符。其中sep是代替分隔符,end是代替末尾的换行符。例如:
1. coffee_cup = 'coffee'
2. print("I love my", coffee_cup, "!",sep="*")
3. """
4. 输出结果是:
5. I love my*coffee*!
6. """
end函数用来定义一行输出的末尾
1. coffee_cup = 'coffee'
2. print("I love my", coffee_cup, "!",end="end_flag")
3. """
4. 输出结果是:
5. I love my coffee !end_flag
6. """
那么,如果要将 两个print()函数打印在一行内 ,则可以利用end参数,将默认的换行符改为空格或是空白即可
1. print('hello', end = " ")
2. print('world', end = "*")
3. print('!')
4. """
5. 输出结果是:
6. hello world*!
7. """
2.进制转换
从二进制转换为十进制有几种方式
第一种是在二进制数前加上0b,显示时会自动转换为十进制,注意这并不是字符串
|
如果是字符串可以利用eval求值
|
第二种是利用int函数,字符串可以以0b为前缀,也可以不使用
|
函数会将输入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) + "个元素:")